home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Professional Soft Collection 1.02
/
Professional Soft Collection 1.02.iso
/
antivir
/
avpro.2_2
/
userguid.doc
< prev
next >
Wrap
Text File
|
1996-01-26
|
115KB
|
2,941 lines
──────────────────────────────────────────────────────────────────────────
ANTIVIRAL TOOLKIT PRO 2.2 for DOS
by Eugene Kaspersky
──────────────────────────────────────────────────────────────────────────
ÉôèÄéÄäæÆéÄ ÅÄï£çÄéÇÆàïƒ
──────────────────────────────────────────────────────────────────────────
(c)KAMI, É«ßß¿∩, 1992-1995.
──────────────────────────────────────────────────────────────────────────
Microsoft, MS-DOS ¿ Windows ∩ó½∩εΓß∩ Γ«óáα¡δ¼¿ º¡á¬á¼¿ Microsoft
Corporation. Borland, Turbo C, Borland C++ ¿ Turbo Vision ∩ó½∩εΓß∩
Γ«óáα¡δ¼¿ º¡á¬á¼¿ Borland International.
Antiviral Toolkit Pro (AVP) ∩ó½∩ÑΓß∩ ¼«Θ¡δ¼ ¿¡ΓÑúα¿α«óá¡¡δ¼ á¡Γ¿ó¿απß¡δ¼
»á¬ÑΓ«¼, ¬«Γ«αδ⌐ ¼«ªÑΓ ¿ß»«½∞º«óáΓ∞ß∩ ó »«½∞º«óáΓѽ∞߬«¼ ¿ »α«ΣÑßß¿«¡á½∞¡«¼
(Pro) óáα¿á¡Γáσ ¿ ó¬½ετáÑΓ ó ßÑí∩ τÑΓδαÑ »α«úαá¼¼δ:
Ç¡Γ¿ó¿απß¡δ⌐ ߬á¡Ñα/Σáú AVP
Ç¡Γ¿ó¿απß¡δ⌐ ߬á¡Ñα/Σáú ß αÑñá¬Γ«α«¼ íẠAVPRO
Ç¡Γ¿ó¿απß¡δ⌐ αѺ¿ñÑ¡Γ¡δ⌐ ñÑΓÑ¬Γ«α AVPTSR
Ç¡Γ¿ó¿απß¡δÑ πΓ¿½¿Γδ AVPUTIL
Äß¡«ó¡δÑ «ß«íÑ¡¡«ßΓ¿ »á¬ÑΓá:
- AVP 2.2 «í¡áαπª¿óáÑΓ ¿ ½Ñτ¿Γ í«½∞Φ«Ñ τ¿ß½« (í«½ÑÑ 5000) ó¿απß«ó;
- óßΓα«Ñ¡¡δ⌐ ¼«ñπ½∞ Code Analyzer (á¡á½¿ºáΓ«α ¬«ñá) »«ºó«½∩ÑΓ
ñÑΓÑ¬Γ¿α«óáΓ∞ «¬«½« 80% ¡«óδσ ó¿απß«ó, ¡Ñ¿ºóÑßΓ¡δσ ΓѬπΘÑ⌐ óÑαß¿¿ »á¬ÑΓá;
- óßΓα«Ñ¡¡δ⌐ ¼«ñπ½∞ αáß»á¬«ó¬¿ ¿ß»«½¡∩Ѽδσ Σá⌐½«ó (Unpacking Engine)
»«ºó«½∩ÑΓ ΓÑßΓ¿α«óáΓ∞ "¡á ½ÑΓπ" Σá⌐½δ, π»á¬«óá¡¡δÑ ¡á¿í«½ÑÑ »«»π½∩α¡δ¼¿
π»á¬«óΘ¿¬á¼¿, Γᬿ¼¿, ¬á¬ PKLITE, LZEXE, DIET ¿ Γ.ñ.
- óßΓα«Ñ¡¡δ⌐ ¼«ñπ½∞ αáß»á¬«ó¬¿ áασ¿ó«ó (Extracting Engine) »«ºó«½∩ÑΓ
ΓÑßΓ¿α«óáΓ∞ "¡á ½ÑΓπ" Σá⌐½δ, π»á¬«óá¡¡δÑ áασ¿óáΓ«αἿ ZIP ¿ ARJ.
- »α¿ »«¼«Θ¿ αÑñá¬Γ«αá íáºδ 󫺼«ª¡« ß«ºñá¡¿Ñ ¡«óδσ á¡Γ¿ó¿απß¡δσ íáº
ñá¡¡δσ ñ½∩ ñÑΓÑ¬Γ¿α«óá¡¿∩/½ÑτÑ¡¿∩ ¡«óδσ ó¿απß«ó.
æ«ñÑαªá¡¿Ñ
────────────────────────────────────────────────────────────────────
1. ôßΓá¡«ó¬á AVP ¡á ¬«¼»∞εΓÑα ¿ ¡áτὫ αáí«Γδ
1.1. ÆαÑí«óá¡¿∩ ¬ ß¿ßΓѼÑ
1.2. êß»«½∞º«óá¡¿Ñ AVP ñ½∩ ñÑΓÑ¬Γ¿α«óá¡¿∩ ¿ πñá½Ñ¡¿∩ ó¿απß«ó
1.3. SET-Σá⌐½ ¿ «í¡«ó½Ñ¡¿Ñ óÑαß¿⌐
1.4. öá⌐½ ∩ºδ¬«ó«⌐ »«ññÑ᪬¿
1.5. Å«σ«ªÑ ¡á Γ«, τΓ« ¬«¼»∞εΓÑα ºáαáªÑ¡. ùΓ« ñѽáΓ∞?
2. Ç¡Γ¿ó¿απß¡δ⌐ ߬á¡Ñα/Σáú AVP
2.1. èαáΓ¬«Ñ «»¿ßá¡¿Ñ ¿ «ß«íÑ¡¡«ßΓ¿
2.1.1 Äß«íÑ¡¡«ßΓ¿ óÑαß¿¿ Pro
2.1.2. Äß¡«ó¡δÑ «ß«íÑ¡¡«ßΓ¿ á¡Γ¿ó¿απß¡«⌐ íáºδ ñá¡¡δσ
2.2. ô»αáó½Ñ¡¿Ñ ¿º ¬«¼á¡ñ¡«⌐ ßΓ᫬¿ ¿ ¬«ñδ ó«ºóαáΓá
2.3. ô»αáó½Ñ¡¿Ñ ¿º ¼Ñ¡ε
2.3.1. îÑ¡ε Scan (Alt-S)
2.3.2. îÑ¡ε View (Alt-V)
2.3.3. îÑ¡ε Edit (ALt-E) (óÑαß¿∩ Pro)
2.3.4. îÑ¡ε Tools (Alt-T)
2.4. ǡ὿ºáΓ«α ¬«ñá (Code Analyzer)
2.5. îÑσá¡¿º¼ αáß»á¬«ó¬¿ ¿ß»«½¡∩Ѽδσ ¼«ñπ½Ñ⌐ (Unpacking Engine)
2.6. îÑσá¡¿º¼ αáß»á¬«ó¬¿ ¿º áασ¿ó«ó (Extracting Engine)
2.7. Help-ß¿ßΓѼá
2.8. 滿߫¬ ß««íΘÑ¡¿⌐ «¬¡á Scan
3. Ç¡Γ¿ó¿απß¡á∩ íáºá ñá¡¡δσ (óÑαß¿∩ Pro)
3.1. çỿß∞ Γ¿»á FILE
3.2. çỿß∞ Γ¿»á JMP
3.3. çỿß∞ Γ¿»á MEMORY
3.4. çỿß∞ Γ¿»á SECTOR
3.5. ï¿¡¬ ߻ѵ¿á½∞¡δσ »α«úαá¼¼
4. ÉѺ¿ñÑ¡Γ¡δ⌐ á¡Γ¿ó¿απß¡δ⌐ ¼«¡¿Γ«α AVPTSR
4.1. ô»αáó½Ñ¡¿Ñ ¿º ¬«¼á¡ñ¡«⌐ ßΓ᫬¿
4.2. 滿߫¬ ß««íΘÑ¡¿⌐
4.3. èáαΓá »á¼∩Γ¿ ¼«¡¿Γ«αá
5. Ç¡Γ¿ó¿απß¡δÑ πΓ¿½¿Γδ AVPUTIL
5.1. îÑ¡ε Utilities
5.1.1. 俺áßßѼí½Ñα/ÄΓ½áñτ¿¬
5.1.2. ÉÑñá¬Γ«α äá¼»á
5.1.3. èáαΓá »á¼∩Γ¿
5.1.4. éÑ¬Γ«αá »αÑαδóá¡¿⌐
5.1.5. Æαáßß¿α«óΘ¿¬
5.1.6. ÅÑαÑσóáΓτ¿¬
5.1.7. ê¡Σ«α¼áµ¿∩ « ß¿ßΓѼÑ
5.1.8. 滿߫¬ Σá⌐½«ó
5.2. îÑ¡ε Object
5.3. îÑ¡ε Block
5.4. îÑ¡ε Setup
5.5. æ¿ßΓѼá GoTo
5.6. â«α∩τ¿Ñ ¬½áó¿Φ¿
────────────────────────────────────────────────────────────────────
1. ôßΓá¡«ó¬á AVP ¡á ¬«¼»∞εΓÑα ¿ ¡áτὫ αáí«Γδ
────────────────────────────────────────────────────────────────────
ôßΓá¡«ó¬á AVP ¡á »Ñαß«¡á½∞¡δ⌐ ¬«¼»∞εΓÑα ñ«ßΓáΓ«τ¡« »α«ßΓá: ¡Ñ«íσ«ñ¿¼«
߬«»¿α«óáΓ∞ óßÑ Σá⌐½δ ß ñ¿ß¬ÑΓδ ó «Γñѽ∞¡δ⌐ ¬áΓὫú ªÑßΓ¬«ú« ñ¿ß¬á
(¡á»α¿¼Ñα, "C:\AVP"). 髺¼«ª¡« Γá¬ªÑ ¿ß»«½∞º«óáΓ∞ AVP ß ñ¿ßΓα¿íπΓ¿ó¡«ú«
Σ½«»»¿-ñ¿ß¬á. àß½¿ ¡á ¬«¼»∞εΓÑαÑ πªÑ πßΓá¡«ó½Ñ¡á »αÑñδñπΘá∩ óÑαß¿∩ AVP, ÑÑ
ß½ÑñπÑΓ ºá¼Ñ¡¿Γ∞ ¡«ó«⌐ óÑαß¿Ñ⌐. Å«ß½Ñ ¬«»¿α«óá¡¿∩ ¡á ªÑßΓ¬¿⌐ ñ¿ß¬ AVP ¼«ªÑΓ
íδΓ∞ ¿ß»«½∞º«óá¡ ó »«½¡«¼ «íΩѼÑ.
Åα«ΣÑßß¿«¡á½∞¡δ⌐ á¡Γ¿ó¿απß¡δ⌐ »á¬ÑΓ AVP ó¬½ετáÑΓ ó ßÑí∩ τÑΓδαÑ ¿ß»«½¡∩Ѽδσ
¼«ñπ½∩:
AVP.EXE : á¡Γ¿ó¿απß¡δ⌐ ߬á¡Ñα/Σáú;
AVPRO.EXE : á¡Γ¿ó¿απß¡δ⌐ ߬á¡Ñα/Σáú ß αÑñá¬Γ«α«¼ íáºδ;
AVPTSR.EXE : á¡Γ¿ó¿απß¡δ⌐ αѺ¿ñÑ¡Γ¡δ⌐ ¼«¡¿Γ«α;
AVPUTIL.COM : á¡Γ¿ó¿απß¡δÑ πΓ¿½¿Γδ.
àß½¿ éδ - Äü¢ùì¢ë ÅÄï£çÄéÇÆàï£ ¬«¼»∞εΓÑαá, Γ« éá¼ ½πτΦÑ »«½∞º«óáΓ∞ß∩
Γ«½∞¬« á¡Γ¿ó¿απß¡δ¼ ß¬á¡Ñα«¼ AVP.EXE, »α¿ »«¼«Θ¿ ¬«Γ«α«ú« 󫺼«ª¡«
ΓÑßΓ¿α«óá¡¿Ñ ¬«¼»∞εΓÑαá ¡á ¡á½¿τ¿Ñ ó¿απß«ó ¿ ó«ßßΓá¡«ó½Ñ¡¿Ñ ¿½¿
πñá½Ñ¡¿Ñ »«αáªÑ¡¡δσ «íΩÑ¬Γ«ó. Äí«½«τ¬á á¡Γ¿ó¿απß¡«ú« ߬á¡Ñαá AVP.EXE
»αÑñßΓáó½∩ÑΓ ß«í«⌐ ßΓá¡ñáαΓ¡δ⌐ «¬«¡¡δ⌐ ¿¡ΓÑαΣÑ⌐ß, ¿ß»«½∞ºπεΘ¿⌐ ¼Ñ¡ε ¿
ñ¿á½«ú«óδÑ «¬¡á. 髺¼«ªÑ¡ óδº«ó «¬¡á »«ñ߬Ậ¿ (¬½áó¿Φá F1).
àß½¿ éδ ∩ó½∩ÑΓÑß∞ æêæÆàîì¢î ÅÉÄâÉÇîîêæÆÄî, éδ ¼«ªÑΓÑ ¿ß»«½∞º«óáΓ∞ ¿ ñαπú¿Ñ
¼«ñπ½¿: αÑñá¬Γ«α á¡Γ¿ó¿απß¡«⌐ íáºδ, á¡Γ¿ó¿απß¡δ⌐ ¼«¡¿Γ«α ¿ πΓ¿½¿Γδ. äá¡¡δÑ
«ß«íÑ¡¡«ßΓ¿ »á¬ÑΓá AVP »αÑñ¡áº¡áτÑ¡δ ñ½∩ á¡á½¿ºá ¡«óδσ ó¿απß«ó ¿
»«ñ¬½ετÑ¡¿∩ ¿¡Σ«α¼áµ¿¿ « ¡¿σ ó á¡Γ¿ó¿απß¡πε íáºπ ñá¡¡δσ.
1.1. ÆαÑí«óá¡¿∩ ¬ ß¿ßΓѼÑ
────────────────────────────────────────────────────────────────────
ä½∩ ¡«α¼á½∞¡«⌐ αáí«Γδ ß AVP ¡Ñ«íσ«ñ¿¼« ¿¼ÑΓ∞:
- »Ñαß«¡á½∞¡δ⌐ ¬«¼»∞εΓÑα IBM PC (¿½¿ 100% ß«ó¼ÑßΓ¿¼δ⌐) ß ¡Ñ ¼Ñ¡ÑÑ 640K
«»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿;
- «»Ñαᵿ«¡¡πε ß¿ßΓѼπ MS-DOS ¿½¿ PC-DOS óÑαß¿¿ 3.30 ¿½¿ óδΦÑ;
- ¡Ñ ¼Ñ¡ÑÑ 580K ßó«í«ñ¡«⌐ »á¼∩Γ¿;
- ¡Ñ ¼Ñ¡ÑÑ 16 ßó«í«ñ¡δσ handles (ßΓ᫬á FILES=16 ó Σá⌐½Ñ CONFIG.SYS);
ÉѬ«¼Ñ¡ñπÑΓß∩ ¿ß»«½∞º«óáΓ∞ AVP ¡á ¬«¼»∞εΓÑαáσ ß »α«µÑßß«α«¼ 386 ¿½¿ óδΦÑ ß
1Mb «»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿. ÉѬ«¼Ñ¡ñπÑΓß∩ Γá¬ªÑ πßΓá¡«ó¿Γ∞ XMS ñαá⌐óÑα ñ½∩
»αÑñ«ΓóαáΘÑ¡¿∩ »α«í½Ñ¼, ßó∩ºá¡¡δσ ß ¡Ññ«ßΓáΓ«τ¡δ¼ «íΩѼ«¼ «»ÑαáΓ¿ó¡«⌐
»á¼∩Γ¿.
ä½∩ óδ»«½¡Ñ¡¿∩ »ÑαÑτ¿ß½Ñ¡¡δσ óδΦÑ πß½«ó¿⌐ ¡Ñ«íσ«ñ¿¼« ó¬½ετ¿Γ∞ ó Σá⌐½
CONFIG.SYS ßΓ᫬¿:
DEVICE=HIMEM.SYS
DOS=HIGH
FILES=32
Åα¿ πßΓá¡«ó¬Ñ AVP ¡á ªÑßΓ¬¿⌐ ñ¿ß¬ πτΓ¿ΓÑ, τΓ« ñ½∩ αáí«Γδ ó αѪ¿¼áσ
αáß»á¬«ó¬¿ ΓÑßΓ¿απѼδσ Σá⌐½«ó ¿ »α¿ ΓÑßΓ¿α«óá¡¿¿ ñ¿ß¬«ó í«½∞Φ¿σ «íΩѼ«ó
»«ΓαÑíπÑΓß∩ ¼ÑßΓ« ñ½∩ óαѼѡ¡δσ Σá⌐½«ó («¬«½« ñóπσ ¼Ñúáíá⌐Γ).
1.2. êß»«½∞º«óá¡¿Ñ AVP ñ½∩ ñÑΓÑ¬Γ¿α«óá¡¿∩ ¿ πñá½Ñ¡¿∩ ó¿απß«ó
────────────────────────────────────────────────────────────────────
Åα¿ ºá»πß¬Ñ ß¬á¡Ñα AVP.EXE ºáúαπªáÑΓ á¡Γ¿ó¿απß¡πε íáºπ ñá¡¡δσ ¿ ΓÑßΓ¿απÑΓ
«»ÑαáΓ¿ó¡πε »á¼∩Γ∞ ¡á ¡á½¿τ¿Ñ αѺ¿ñÑ¡Γ¡δσ ó¿απß«ó. çáΓѼ ¡á φ¬αá¡Ñ
»«∩ó½∩ÑΓß∩ «¬¡« "Test Dialog". ä½∩ Γ«ú«, τΓ«íδ »α«ΓÑßΓ¿α«óáΓ∞ óßÑ
¿ß»«½¡∩ѼδÑ Σá⌐½δ ¡á óßÑσ ½«¬á½∞¡δσ ñ¿ß¬áσ, ß½ÑñπÑΓ ¡áªáΓ∞ ENTER.
ä½∩ ¿º¼Ñ¡Ñ¡¿∩ »áαá¼ÑΓα«ó ΓÑßΓ¿α«óá¡¿∩ ¡Ñ«íσ«ñ¿¼« óδºóáΓ∞ «¬¡« "Setup
Dialog" - ¬«¼í¿¡áµ¿∩ ¬½áó¿Φ Alt-S.
ä½∩ ó맮óá »«óΓ«α¡«ú« ΓÑßΓ¿α«óá¡¿∩ ¿ß»«½∞ºπÑΓß∩ ¬½áó¿Φá F9 ¿½¿
ß««ΓóÑΓßΓóπεΘá∩ ¬«¼á¡ñá ó ¼Ñ¡ε "Scan" (¬«¼á¡ñá "Scan|Test"). Åα«µÑñπαá
½ÑτÑ¡¿∩ óδºδóáÑΓß∩ ¬«¼í¿¡áµ¿Ñ⌐ Ctrl-F9 ¿½¿ ¬«¼á¡ñ«⌐ "Scan|Cure".
ä½∩ óδσ«ñá ¿º AVP.EXE ¿ß»«½∞ºπÑΓß∩ ¬«¼í¿¡áµ¿∩ Alt-X ¿½¿ ¬«¼á¡ñá "Scan|Exit".
1.3. SET-Σá⌐½ ¿ «í¡«ó½Ñ¡¿Ñ óÑαß¿⌐
────────────────────────────────────────────────────────────────────
SET-Σá⌐½ (AVP.SET) ß«ñÑαª¿Γ ß»¿ß«¬ ¿¼Ñ¡ á¡Γ¿ó¿απß¡δσ íáº, πτáßΓóπεΘ¿σ ó
ΓÑßΓ¿α«óá¡¿¿ ¿ ½ÑτÑ¡¿¿ ¬«¼»∞εΓÑα¡δσ ó¿απß«ó. ê¼Ñ¡á íẠºá¡«ß∩Γß∩ ó SET-Σá⌐½
ó «íδτ¡«¼ ΓѬßΓ«ó«¼ ó¿ñÑ (ASCII), τΓ« »«ºó«½∩ÑΓ αÑñá¬Γ¿α«óáΓ∞ φëà Σá⌐½
½εíδ¼ ΓѬßΓ«óδ¼ αÑñá¬Γ«α«¼.
èáªñá∩ ßΓ᫬á SET-Σá⌐½á ß«ñÑαª¿Γ «ñ¡« ¿¼∩. ä½∩ Γ«ú« τΓ«íδ ñ«íáó¿Γ∞ ¡«óπε
íáºπ, ¡Ñ«íσ«ñ¿¼« óßΓáó¿Γ∞ ó SET-Σá⌐½ ¡«óπε ßΓப㠨 ºá»¿ßáΓ∞ ó ¡ÑÑ ¿¼∩
¡«ó«⌐ á¡Γ¿ó¿απß¡«⌐ íáºδ. ä½∩ Γ«ú« τΓ«íδ ¿ß¬½ετ¿Γ∞ íáºπ ¿º »α«µÑñπαδ
߬᡿α«óá¡¿∩/½ÑτÑ¡¿∩ ¡Ñ«íσ«ñ¿¼« ½¿í« πñ὿Γ∞ ß««ΓóÑΓßΓóπεΘπε ßΓ᫬π, ½¿í«
ºá¬«¼¼Ñ¡Γ¿α«óáΓ∞ ÑÑ º¡á¬«¼ ";". Åα¿¼Ñα SET-Σá⌐½á:
SET-Σá⌐½ 諼¼Ñ¡Γáα¿¿ (¡Ñ ó¬½ετáεΓß∩ ó SET-Σá⌐½)
------------- --------------------------------------
KERNEL.AVB íáºá Kernel
;DISINF.AVB íáºá ½ÑτÑ¡¿∩ ß½«ª¡δσ ó¿απß«ó, ¿ß¬½ετÑ¡á ¿º SET-Σá⌐½á
V_941104.AVB «ß¡«ó¡á∩ á¡Γ¿ó¿απß¡á∩ íáºá
TROJAN.AVB íáºá Γα«∩¡ß¬¿σ »α«úαá¼¼
UNPACK.AVB ¼Ñσá¡¿º¼ αá߻ᬫó¬¿
EXTRACT.AVB ¼Ñσá¡¿º¼ αáºáασ¿ó¿α«óá¡¿∩
CA.AVB á¡á½¿ºáΓ«α ¬«ñá
æ¬á¡Ñα AVP ¡Ñ ñ«½ªÑ¡ ºá»π߬áΓ∞ß∩ íѺ íáºδ KERNEL.AVB, ó »α«Γ¿ó¡«¼ ß½πτáÑ ¡¿
«ñ¿¡ ó¿απß ¡Ñ íπñÑΓ «í¡áαπªÑ¡. üáºá KERNEL.AVB ñ«½ª¡á »α¿ßπΓßΓó«óáΓ∞ ó
»Ñαó«⌐ ßΓα«¬Ñ SET-Σá⌐½á.
ä½∩ «í¡«ó½Ñ¡¿∩ ΓѬπΘÑ⌐ óÑαß¿¿ AVP ¡Ñ«íσ«ñ¿¼« ߬«»¿α«óáΓ∞ ¡«óδÑ íáºδ ó
αáí«τ¿⌐ ¬áΓὫú AVP ¿ ñ«íáó¿Γ∞ ¿¼Ñ¡á ¡«óδσ íẠó SET-Σá⌐½:
SET-Σá⌐½ 諼¼Ñ¡Γáα¿¿ (¡Ñ ó¬½ετáεΓß∩ ó SET-Σá⌐½)
------------- --------------------------------------
KERNEL.AVB íáºá Kernel
V_941104.AVB «ß¡«ó¡á∩ á¡Γ¿ó¿απß¡á∩ íáºá
UP941113.AVB ¡«óá∩ íáºá (update)
UP941120.AVB ¡«óá∩ íáºá (update)
1.4. öá⌐½ ∩ºδ¬«ó«⌐ »«ññÑ᪬¿
────────────────────────────────────────────────────────────────────
éßÑ ß««íΘÑ¡¿∩ á¡Γ¿ó¿απß¡«ú« ߬á¡Ñαá AVP (ó¬½ετá∩ óÑαß¿ε Pro) ¡áσ«ñ∩Γß∩ ó
Σá⌐½e ∩ºδ¬«ó«⌐ »«ññÑ᪬¿ (AVP.LNG). ¥Γ«Γ Σá⌐½ «í∩ºáΓѽ∞¡« ñ«½ªÑ¡
»α¿ßπΓßΓó«óáΓ∞ ó αáí«τѼ ¬áΓὫúÑ AVP, ó »α«Γ¿ó¡«¼ ß½πτáÑ AVP ¡Ñ íπñÑΓ
αáí«ΓáΓ∞.
é »«ßΓáó½∩Ѽδ⌐ »á¬ÑΓ ó¬½ετÑ¡ LNG-Σá⌐½ ½¿í« ß á¡ú½¿⌐߬¿¼¿, ½¿í« ß απß߬¿¼¿
ß««íΘÑ¡¿∩¼¿, ½¿í« ñóá LNG-Σá⌐½á. ä½∩ »«½πτÑ¡¿∩ LNG-Σá⌐½á ß ß««íΘÑ¡¿∩¼¿ ¡á
ñαπú¿σ ∩ºδ¬áσ ¡Ñ«íσ«ñ¿¼« «íαáΓ¿Γ∞ß∩ ¬ ñ¿½Ñαá¼ AVP.
1.5. Å«σ«ªÑ ¡á Γ«, τΓ« ¬«¼»∞εΓÑα ºáαáªÑ¡. ùΓ« ñѽáΓ∞?
────────────────────────────────────────────────────────────────────
ä½∩ ¡áτá½á ºá»πßΓ¿ΓÑ AVP.EXE ó αѪ¿¼Ñ ΓÑßΓ¿α«óá¡¿∩ óßÑσ óδ»«½¡∩Ѽδσ
Σá⌐½«ó (COM, EXE, SYS, BAT ¿ «óÑα½ÑÑó) ¿ ßÑ¬Γ«α«ó óßÑσ ñ¿ß¬«ó, ó¬½ετá∩
Σ½«»»¿-ñ¿ß¬¿. àß½¿ «í¡áαπªÑ¡δ ºáαáªÑ¡¡δÑ «íΩѬΓδ, ß½ÑñπÑΓ ºá»πßΓ¿Γ∞
AVP.EXE ó αѪ¿¼Ñ ½ÑτÑ¡¿∩.
àß½¿ ó¿απßδ ¡Ñ «í¡áαπªÑ¡δ, ¡áª¼¿ΓÑ ¬¡«»¬π "Alarm!" ó «¬¡Ñ "Setup" ¿
»«óΓ«α¿ΓÑ »α«µÑñπαπ ΓÑßΓ¿α«óá¡¿∩. àß½¿ AVP.EXE óδñáßΓ ß««íΘÑ¡¿∩ «
»«ñ«ºα¿Γѽ∞¡δσ Σá⌐½áσ/ßÑ¬Γ«αáσ, éá¼ ß½ÑñπÑΓ «íαáΓ¿Γ∞ß∩ ¬ ß¿ßΓѼ¡«¼π
»α«úαá¼¼¿ßΓπ. àß½¿ éá¼ πñáßΓ∞ß∩ óδñѽ¿Γ∞ ºáαáªÑ¡¡δÑ Σá⌐½δ, Γ« éδ ¼«ªÑΓÑ
»ÑαÑñáΓ∞ ¿σ ñ½∩ á¡á½¿ºá ó Σ¿α¼π èÇîê.
æ¼. Γá¬ªÑ ú½áóπ "îÑΓ«ñδ «í¡áαπªÑ¡¿∩ ¿ πñá½Ñ¡¿∩ ¬«¼»∞εΓÑα¡δσ ó¿απß«ó" ó
¬¡¿úÑ à.èáß»Ñα߬«ú« "諼»∞εΓÑα¡δÑ ó¿απßδ ó MS-DOS".
────────────────────────────────────────────────────────────────────
2. Ç¡Γ¿ó¿απß¡δ⌐ ߬á¡Ñα/Σáú AVP
────────────────────────────────────────────────────────────────────
Ç¡Γ¿ó¿απß¡δ⌐ ߬á¡Ñα AVP.EXE ΓÑßΓ¿απÑΓ ¿ ó«ßßΓá¡áó½¿óáÑΓ Σá⌐½δ ¿ ºáúαπº«τ¡δÑ
ßÑ¬Γ«αδ ñ¿ß¬«ó, ºáαáªÑ¡¡δÑ ¿ºóÑßΓ¡δ¼¿ ó¿απßἿ. æ¬á¡Ñα Γá¬ªÑ »α«óÑα∩ÑΓ
Σá⌐½δ/ßÑ¬Γ«αá ¿ ß¿ßΓѼ¡πε »á¼∩Γ∞ ¡á ¡á½¿τ¿Ñ "»«ñ«ºα¿Γѽ∞¡«ú«" ¬«ñá ¿
«í¡áαπª¿óáÑΓ í«½∞Φ«Ñ ¬«½¿τÑßΓó« ¡«óδσ ¡Ñ¿ºóÑßΓ¡δσ ó¿απß«ó. ê¡Σ«α¼áµ¿∩ «í
¿ºóÑßΓ¡δσ ó¿απßáσ ñ«ßΓπ»¡á ó Help-ß¿ßΓѼÑ.
2.1. èαáΓ¬«Ñ «»¿ßá¡¿Ñ ¿ «ß«íÑ¡¡«ßΓ¿
────────────────────────────────────────────────────────────────────
é σ«ñÑ αáí«Γδ AVP.EXE »α«ó«ñ¿Γ ΓÑßΓ¿α«óá¡¿Ñ:
- ß¿ßΓѼ¡«⌐ »á¼∩Γ¿;
- Σá⌐½«ó, ó¬½ετá∩ áασ¿óδ ¿ π»á¬«óá¡¡δÑ Σá⌐½δ;
- ßÑ¬Γ«α«ó, ß«ñÑαªáΘ¿σ ß¿ßΓѼ¡δ⌐ ºáúαπºτ¿¬ ó¿¡τÑßΓÑαá
(Master Boot Record) ¿ ºáúαπº«τ¡δ⌐ ßÑ¬Γ«α (Boot-ßÑ¬Γ«α);
- Γáí½¿µδ αẼÑΘÑ¡¿∩ Σá⌐½«ó (File Allocation Table).
è «ß¡«ó¡δ¼ «ß«íÑ¡¡«ßΓ∩¼ AVP.EXE ¼«ª¡« «Γ¡ÑßΓ¿:
- 󫺼«ª¡«ßΓ∞ πñá½Ñ¡¿∩ ó¿απß«ó. çáαáªÑ¡¡δÑ Σá⌐½δ, ¬«¡Ñτ¡«, ½πτΦÑ
ó«ßßΓá¡«ó¿Γ∞ ß αѺÑαó¡δσ ¬«»¿⌐, «ñ¡á¬«, Ñß½¿ φΓ« ¡Ñ󫺼«ª¡«, AVP.EXE
ó«ßßΓá¡«ó¿Γ Σá⌐½δ ó ó¿ñÑ, ¡á¿í«½ÑÑ í½¿º¬«¼ ¬ «α¿ú¿¡á½π.
- 󫺼«ª¡«ßΓ∞ ߬᡿α«óá¡¿∩ ó¡πΓα¿ π»á¬«óá¡¡δσ ¿ áασ¿ó¡δσ Σá⌐½«ó.
- AVP.EXE »α«óÑα∩ÑΓ Σá⌐½δ ¿ ß¿ßΓѼ¡δÑ ßÑ¬Γ«αá ¡á 󫺼«ª¡«Ñ ¡á½¿τ¿Ñ ¡«óδσ
¡Ñ¿ºóÑßΓ¡δσ ó¿απß«ó »α¿ »«¼«Θ¿ ¼«ñπ½∩ Code Analyzer. é ß««ΓóÑΓßΓó¿¿ ß α∩ñ«¼
ΓÑßΓ«ó φëà φóα¿ßΓ¿τÑ߬¿⌐ á½ú«α¿Γ¼ »«ºó«½∩ÑΓ ñÑΓÑ¬Γ¿α«óáΓ∞ «¬«½« 80% ¡«óδσ
ó¿απß«ó.
- »«¿ß¬ ó ñóπσ αѪ¿¼áσ: «ß¡«ó¡«¼ ¿ ¼Ññ½Ñ¡¡«¼. Äß¡«ó¡«⌐ αѪ¿¼ ∩ó½∩ÑΓß∩
ßΓá¡ñáαΓ¡δ¼ αáí«τ¿¼ αѪ¿¼«¼ ¿ ó í«½∞Φ¿¡ßΓóÑ ß½πτáÑó ∩ó½∩ÑΓß∩ ñ«ßΓáΓ«τ¡δ¼.
Åα¿ Ñú« ¿ß»«½∞º«óá¡¿¿ »α«¿ßσ«ñ¿Γ á¡á½¿º ºáú«½«ó¬á Σá⌐½á ¿ áñαÑß«ó, ¬πñá
»ÑαÑñáÑΓß∩ π»αáó½Ñ¡¿∩ ¿º ¡áτá½á Σá⌐½á. Äñ¡á¬« ¿¡«úñá »α«¿ßσ«ñ¿Γ
¡Ñ¬«ααÑ¬Γ¡«Ñ ºáαáªÑ¡¿Ñ Σá⌐½á ó¿απß«¼, ¿½¿ Σá⌐½ ∩ó½∩ÑΓß∩ '¡Ññ«½ÑτÑ¡¡δ¼',
Γ.Ñ. ¡áτὫ Σá⌐½á ó«ßßΓá¡«ó½Ñ¡«, ¡« ó¿απß ¡Ñ «ΓßÑτÑ¡. é φΓ«¼ ß½πτáÑ
¿ß»«½∞ºπÑΓß∩ ¼ÑΓ«ñ ¼Ññ½Ñ¡¡«ú« »«¿ß¬á, ¬«Γ«αδ⌐ »«ºó«½∩ÑΓ «í¡áαπª¿Γ∞
»α¿ßπΓßΓó¿Ñ ó¿απßá ó Γᬿσ Σá⌐½áσ.
- ΓÑßΓ¿α«óá¡¿Ñ ¿ «íѺºáαᪿóá¡¿Ñ «»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿. Åα¿ ¿ß»«½∞º«óá¡¿¿
á¡Γ¿ó¿απß¡δσ »α«úαá¼¼ ¡áßΓ«∩Γѽ∞¡« αѬ«¼Ñ¡ñπÑΓß∩ ºáúαπªáΓ∞ß∩ ß ºáóÑñ«¼«
ßó«ε«ñ¡«⌐ «Γ ó¿απß«ó ñ¿ß¬ÑΓδ, ß«ñÑαªáΘÑ⌐ DOS. ¥Γ« ¡Ñ«íσ«ñ¿¼« ñ½∩
úáαá¡Γ¿α«óá¡¡«ú« «ΓßπΓßΓó¿∩ ó¿απß«ó ó «»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿, »«ß¬«½∞¬π
αѺ¿ñÑ¡Γ¡δ⌐ ó¿απß ¼«ªÑΓ ¼ÑΦáΓ∞ αáí«ΓÑ á¡Γ¿ó¿απß¡δσ »α«úαá¼¼ ¿½¿ ñáªÑ
¿ß»«½∞º«óáΓ∞ ¿σ αáí«Γπ ñ½∩ ßó«Ñú« αáß»α«ßΓαá¡Ñ¡¿∩. æπΦÑßΓóπεΓ αѺ¿ñÑ¡Γ¡δÑ
ó¿απßδ, ¬«Γ«αδÑ αÑáú¿απεΓ ¡á ºá»π߬ 󻫽¡Ñ «»αÑñѽѡ¡δσ á¡Γ¿ó¿απß¡δσ
»α«úαá¼¼ (¡á»α¿¼Ñα, ó¿απßδ "Caz" ßΓ¿αáεΓ ßÑ¬Γ«αá ñ¿ß¬«ó »α¿ ºá»π߬Ñ
¡Ñ¬«Γ«αδσ á¡Γ¿ó¿απß«ó). Äñ¡á¬«, Ñß½¿ DOS ºáúαπªÑ¡á ¡Ñ ß ñ¿ß¬ÑΓδ, ºáóÑñ«¼«
τ¿ßΓ«⌐ «Γ ó¿απß«ó, »á¼∩Γ∞ ¬«¼»∞ΓÑαá ΓÑßΓ¿απÑΓß∩ ¡á ¿ºóÑßΓ¡δÑ ó¿απßδ.
- »α«óÑα¬á Σá⌐½«ó ¿ ß¿ßΓѼ¡δσ ßÑ¬Γ«α«ó ¡á ¡á½¿τ¿Ñ ó ¡¿σ ¿º¼Ñ¡Ñ¡¿⌐. Åα¿ φΓ«¼
¿ß»«½∞ºπÑΓß∩ á½ú«α¿Γ¼ »«ñßτÑΓá ¬«¡Γα«½∞¡δσ ßπ¼¼ Σá⌐½«ó. àß½¿ »α¿ «τÑαÑñ¡«⌐
»α«óÑα¬Ñ á¡Γ¿ó¿απß «í¡áαπª¿Γ ¡Ñß««ΓóÑΓßΓó¿Ñ ¬«¡Γα«½∞¡δσ ßπ¼¼, Γ« «¡ óδñáßΓ
ß««íΘÑ¡¿Ñ « Γ«¼, τΓ« Σá⌐½/ßÑ¬Γ«α ¿º¼Ñ¡Ñ¡.
- ¼«Θ¡á∩ ú¿»ÑαΓѬßΓ«óá∩ Help-ß¿ßΓѼá, ó ¬«Γ«απε ó¬½ετÑ¡á ßá¼á∩ ßóѪá∩
¿¡Σ«α¼áµ¿∩ « ó¿απßáσ ¿ ¼ÑΓ«ñáσ ¿σ »«¿ß¬á ¿ πñá½Ñ¡¿∩. Åα¿ »α«ß¼«ΓαÑ «»¿ßá¡¿⌐
¡Ñ¬«Γ«αδσ ó¿απß«ó 󫺼«ª¡« óδºóáΓ∞ ºóπ¬«ó«⌐ ¿½¿ ó¿ñÑ«-φΣΣѬΓ
ß««ΓóÑΓßΓóπεΘÑú« ó¿απßá.
- »«ññÑ᪬á XMS »á¼∩Γ¿, πßΓα«⌐ßΓóá "¼δΦ∞", Σ«α¼áΓá φ¬αá¡á 43/50 ßΓ᫬ ñ½∩
áñá»ΓÑα«ó EGA/VGA, ¿º¼Ñ¡Ñ¡¿Ñ ¿ ß«σαá¡Ñ¡¿Ñ ¡áßΓα«⌐¬¿.
2.1.1. Äß«íÑ¡¡«ßΓ¿ óÑαß¿¿ Pro
────────────────────────────────────────────────────────────────────
è á¡Γ¿ó¿απß¡«¼π ߬á¡Ñαπ óÑαß¿¿ Pro »«ñ¬½ετÑ¡ αÑñá¬Γ«α á¡Γ¿ó¿απß¡δσ íáº
ñá¡¡δσ, »α¿ »«¼«Θ¿ ¬«Γ«α«ú« ¼«ª¡« »«ñ¬½ετáΓ∞ ¬ ß¿ßΓÑ¼Ñ ºá»¿ß¿, π»αáó½∩εΘ¿Ñ
«í¡áαπªÑ¡¿Ñ¼ ¿ πñá½Ñ¡¿Ñ¼ ó¿απßá. Åα¿ »«¼«Θ¿ αÑñá¬Γ«αá φ¬ß»ÑαΓδ »«
íѺ«»áß¡«ßΓ¿ ¼«úπΓ ßἫßΓ«∩Γѽ∞¡« í«α«Γ∞ß∩ ß ¡«ó묨 ¬«¼»∞εΓÑα¡δ¼¿ ó¿απßἿ.
üáºá ñá¡¡δσ ß«ßΓ«¿Γ ¿º ºá»¿ßÑ⌐ τÑΓδαÑσ Γ¿»«ó:
JMP - »«ñßτÑΓ áñαÑßá Γ«τ¬¿ óσ«ñá ó »α«úαá¼¼π;
FILE - ¼ÑΓ«ñ «í¡áαπªÑ¡¿∩ ¿ πñá½Ñ¡¿∩ ó¿απßá ¿º Σá⌐½«ó;
SECTOR - ¼ÑΓ«ñ «í¡áαπªÑ¡¿∩ ¿ πñá½Ñ¡¿∩ ó¿απßá ¿º ßÑ¬Γ«α«ó;
MEMORY - ¼ÑΓ«ñ «í¡áαπªÑ¡¿∩ ¿ «íѺºáαᪿóá¡¿∩ ó¿απßá ó «»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿.
çừ½¡Ñ¡¿Ñ »«½Ñ⌐ íáºδ óÑñÑΓß∩ ó »«½πáóΓ«¼áΓ¿τÑ߬«¼ αѪ¿¼Ñ: ñ«ßΓáΓ«τ¡«
π¬áºáΓ∞, ó ¬á¬«¼ ¼ÑßΓÑ Σá⌐½á/ßÑ¬Γ«αá ß½ÑñπÑΓ ¿ß¬áΓ∞ ó¿απß, ¬á¬¿¼ ¼ÑΓ«ñ«¼
ß½ÑñπÑΓ Ñú« πñ὿Γ∞, ¿¼∩ ºáαáªÑ¡¡«ú« Σá⌐½á, - ¿ ¿¡Σ«α¼áµ¿∩, ñ«ßΓáΓ«τ¡á∩ ñ½∩
»«¿ß¬á ¿ π¡¿τΓ«ªÑ¡¿∩ ó¿απßá íπñÑΓ »«¼ÑΘÑ¡á ó íáºπ ñá¡¡δσ.
2.1.2. Äß¡«ó¡δÑ «ß«íÑ¡¡«ßΓ¿ á¡Γ¿ó¿απß¡«⌐ íáºδ ñá¡¡δσ
────────────────────────────────────────────────────────────────────
Äß¡«ó¡δ¼¿ «ß«íÑ¡¡«ßΓ∩¼¿ á¡Γ¿ó¿απß¡«⌐ íáºδ ñá¡¡δσ ∩ó½∩εΓß∩:
- ¿ß»«½∞º«óá¡¿Ñ ¬«¡Γα«½∞¡δσ ßπ¼¼ ó¼ÑßΓ« ¼áß«¬ ó¿απß«ó. é íáºÑ ß«σαá¡∩ÑΓß∩
¡Ñ τáßΓ∞ ¬«ñá ó¿απßá (ñ½∩ ßαáó¡Ñ¡¿∩ »« «íαẵπ), á ¬«¡Γα«½∞¡á∩ ßπ¼¼á ¬«ñá.
¥Γ« º¡áτ¿Γѽ∞¡« π¼Ñ¡∞ΦáÑΓ αẼÑα íáºδ ¿ ¡Ñ߬«½∞¬« πóѽ¿τ¿óáÑΓ ß¬«α«ßΓ∞ ÑÑ
αáí«Γδ;
- Φ¿α«¬¿⌐ ߻ѬΓα ßΓá¡ñáαΓ¡δσ ¼ÑΓ«ñ«ó πñá½Ñ¡¿∩ ó¿απß«ó. Æᬿσ ¼ÑΓ«ñ«ó í«½ÑÑ
10 Γ«½∞¬« ñ½∩ Σá⌐½«óδσ ó¿απß«ó, φΓ« »«ºó«½∩ÑΓ ßπΘÑßΓóÑ¡¡« áóΓ«¼áΓ¿º¿α«óáΓ∞
»α«µÑßß »«ñ¬½ετÑ¡¿∩ ó¿απßá ó íáºπ ñá¡¡δσ;
- ñ¿¡á¼¿τÑ߬¿⌐ ½¿¡¬Ñα ߻ѵ¿á½∞¡δσ »«ñ»α«úαá¼¼. Åα¿¼Ñ¡∩ÑΓß∩ »α¿ «í¡áαπªÑ¡¿¿
¿ πñá½Ñ¡¿¿ ó¿απß«ó, ¿ß»«½∞ºπεΘ¿σ Φ¿Σα«ó¬¿ ¬«ñá, ¡ÑßΓá¡ñáαΓ¡δÑ ¼ÑΓ«ñδ
ó¡ÑñαÑ¡¿∩ ó Σá⌐½δ ¿½¿ ßÑ¬Γ«αá. é Γᬿσ ß½πτá∩σ ñ«ßΓáΓ«τ¡« ¡á»¿ßáΓ∞
»α«úαá¼¼π ¡á ∩ºδ¬Ñ C ¿½¿ ÇßßѼí½ÑαÑ ¿ »«ñ¬½ετ¿Γ∞ ÑÑ ¬ ºá»¿ß¿ ó íáºÑ ñá¡¡δσ.
¥Γá ߻ѵ¿á½∞¡á∩ »α«úαá¼¼á íπñÑΓ áóΓ«¼áΓ¿τÑ߬¿ ½¿¡¬«óáΓ∞ß∩ ß «ß¡«ó¡δ¼
EXE-¼«ñπ½Ñ¼ ¿ óδºδóáΓ∞ß∩ »α¿ «íαáí«Γ¬Ñ ß««ΓóÑΓßΓóπεΘÑ⌐ ºá»¿ß¿ ó íáºÑ
ñá¡¡δσ;
- ó맮ó ó¡ÑΦ¡¿σ Σπ¡¬µ¿⌐. æ»Ñµ¿á½∞¡δÑ »α«úαá¼¼δ, »«ñ¬½ετáѼδÑ ¬ ºá»¿ß∩¼ íáºδ
ñá¡¡δσ, ¿ß»«½∞ºπεΓ ó¡ÑΦ¡¿Ñ ¿¼Ñ¡á (¬«¡ßΓá¡Γδ, Σπ¡¬µ¿¿, »ÑαѼѡ¡δÑ, ¼áßß¿óδ ¿
ßΓαπ¬Γπαδ). é¡ÑΦ¡¿Ñ ¿¼Ñ¡á ¼«úπΓ íδΓ∞ ¬á¬ ßΓá¡ñáαΓ¡δ¼¿, Γ.Ñ. «»αÑñѽѡ¡δ¼¿ ó
«ß¡«ó¡«¼ EXE-¼«ñπ½Ñ, Γᬠ¿ ߻ѵ¿á½∞¡δ¼¿, Γ.Ñ. «íΩ∩ó½Ñ¡¡δ¼¿ ó «ñ¡«⌐ ¿º
ºá»¿ßÑ⌐ íáºδ ñá¡¡δσ. Æá¬, ¡á ßѼÑ⌐ßΓó« ó¿απß«ó, ¿ß»«½∞ºπεΘ¿σ «ñ¿¡ ¿ ëà ªÑ
¼ÑΓ«ñ Φ¿Σα«ó¬¿, ¡« ß αáº¡δ¼¿ »áαá¼ÑΓαἿ, ¼«ª¡« «»¿ßáΓ∞ «ñ¡π »α«úαá¼¼π
αáßΦ¿Σα«ó¬¿, »«¼ÑßΓ¿Γ∞ ÑÑ ó íáºπ ñá¡¡δσ, á ºáΓѼ óδºδóáΓ∞ ÑÑ ß αẽ¿τ¡δ¼¿
»áαá¼ÑΓαἿ ¿º ñαπú¿σ ºá»¿ßÑ⌐ íáºδ.
2.2. ô»αáó½Ñ¡¿Ñ ¿º ¬«¼á¡ñ¡«⌐ ßΓ᫬¿ ¿ ¬«ñδ ó«ºóαáΓá
────────────────────────────────────────────────────────────────────
é맮ó AVP.EXE ¿º DOS ¿¼ÑÑΓ ß½ÑñπεΘ¿⌐ Σ«α¼áΓ :
AVP [ è½ετ¿ ... ] [ êîƒ Σá⌐½á ¿½¿ ñ¿ß¬á ... ]
è½ετ¿:
"/T" Åα«¿ºóÑßΓ¿ ΓÑßΓ Σá⌐½«ó ¿ ßÑ¬Γ«α«ó ¡á »α¿ßπΓßΓó¿Ñ ó¿απßá (»«
π¼«½τá¡¿ε). é φΓ«¼ αѪ¿¼Ñ »α«¿ºó«ñ¿Γß∩ »«¿ß¬ ó¿απß«ó ¿ ó¿απß«»«ñ«í¡δσ
πτáßΓ¬«ó ó Σá⌐½áσ ¿ ºáúαπº«τ¡δσ ßÑ¬Γ«αáσ ñ¿ß¬«ó. Äí¡áαπªÑ¡¿Ñ ó¿απßá ó
Σá⌐½Ñ »α«¿ßσ«ñ¿Γ Γ«½∞¬« ó ß½πτáÑ ñÑ⌐ßΓó¿Γѽ∞¡« ºáαáªÑ¡¡«ú« Σá⌐½á.
"/-" é«ßßΓá¡«ó¿Γ∞ Σá⌐½δ ¿ ºáúαπº«τ¡δÑ ßÑ¬Γ«αδ, ºáαáªÑ¡¡δÑ ó¿απß«¼. é φΓ«¼
αѪ¿¼Ñ »α«¿ºó«ñ¿Γß∩ »«¿ß¬ ¿ ó«ßßΓá¡«ó½Ñ¡¿Ñ Σá⌐½«ó ¿ ßÑ¬Γ«α«ó, ºáαáªÑ¡¡δσ
ó¿απß«¼. öá⌐½δ ¿ ßÑ¬Γ«αδ ó«ßßΓá¡áó½¿óáεΓß∩ ó »Ñαó«¡áτá½∞¡«¼ ó¿ñÑ (Ñß½¿ φΓ«
󫺼«ª¡«) ¿½¿ ¡á¿í«½ÑÑ í½¿º¬«¼ ¬ »Ñαó«¡áτá½∞¡«¼π. àß½¿ ó«ßßΓá¡«ó½Ñ¡¿Ñ
ºáúαπº«τ¡«ú« ßÑ¬Γ«αá ¡Ñ󫺼«ª¡«, Γ« ºá»¿ßδóáÑΓß∩ ßΓá¡ñáαΓ¡δ⌐ ºáúαπºτ¿¬
MS-DOS 6.0.
"/W[A][=filename]" æ«σαá¡¿Γ∞ ó Σá⌐½Ñ »α«Γ«¬«½á (AVP.MSG »« π¼«½τá¡¿ε)
ß««íΘÑ¡¿∩, óδñáóáѼδÑ AVP. "/WA" - ñ«íáó½∩Γ∞ ß««íΘÑ¡¿∩ ó πªÑ ßπΘÑßΓóπεΘ¿⌐
Σá⌐½, ó »α«Γ¿ó¡«¼ ß½πτáÑ Σá⌐½ íπñÑΓ π¡¿τΓ«ªÑ¡. Filename - ¿¼∩ Σá⌐½á
»α«Γ«¬«½á, ó ¬«Γ«αδ⌐ íπñπΓ ºá»¿ßδóáΓ∞ß∩ ß««íΘÑ¡¿∩.
"/C" ¥Γ«Γ ¬½ετ ó¬½ετáÑΓ ¼Ñσá¡¿º¼ «í¡áαπªÑ¡¿∩ ¿º¼Ñ¡Ñ¡¡δσ «íΩÑ¬Γ«ó »α¿ »«¼«Θ¿
¬«¡Γα«½∞¡δσ ßπ¼¼, Ñß½¿ Γáí½¿µá ¬«¡Γα«½∞¡δσ ßπ¼¼ πªÑ ß«ºñá¡á.
"/D" ÆÑßΓ¿α«óá¡¿Ñ «ñ¿¡ αẠó ñÑ¡∞. ä½∩ ¿ß»«½∞º«óá¡¿∩ ó .BAT-Σá⌐½áσ.
"/M" Åα«»πßΓ¿Γ∞ ΓÑßΓ »á¼∩Γ¿.
"/P" ìÑ ΓÑßΓ¿α«óáΓ∞ MBR ó¿¡τÑßΓÑαá.
"/B" ìÑ ΓÑßΓ¿α«óáΓ∞ Boot-ßÑ¬Γ«αδ ñ¿ß¬«ó.
"/F" ÆÑßΓ¿α«óáΓ∞ FAT ñ¿ß¬«ó.
"/O" ìÑ ½Ñτ¿Γ∞ Σá⌐½δ, »«¼ÑτÑ¡¡δÑ ¬á¬ read-only.
"/S" ÄΓ¬½ετ¿Γ∞ ºóπ¬«ó«⌐ ß¿ú¡á½.
"/TMP=path" ìÑ»«ßαÑñßΓóÑ¡¡«Ñ π¬áºá¡¿Ñ ¬áΓὫú« ñ½∩ óαѼѡ¡δσ Σá⌐½«ó. Å«
π¼«½τá¡¿ε ¿ß»«½∞ºπÑΓß∩ ß¿ßΓѼ¡á∩ »ÑαѼѡ¡á∩ TEMP ¿½¿ TMP ¿º Environment.
àß½¿ ¡¿ ó ¬«¼á¡ñ¡«⌐ ßΓ᫬Ñ, ¡¿ ó Environment ¬áΓὫú óαѼѡ¡δσ Σá⌐½«ó ¡Ñ
«»αÑñѽѡ, Γ« ¿ß»«½∞ºπÑΓß∩ ¬áΓὫú, «Γ¬πñá íδ½á ºá»πΘÑ¡á »α«úαá¼¼á AVP.EXE.
"/X" ìÑ ¿ß»«½∞º«óáΓ∞ XMS »á¼∩Γ∞.
"/Y" Åα«»π߬áΓ∞ ñ¿á½«ú¿. ä½∩ ¿ß»«½∞º«óá¡¿∩ ó .BAT-Σá⌐½áσ.
"/Q" éδσ«ñ ó DOS »«ß½Ñ ΓÑßΓ¿α«óá¡¿∩ ¿½¿ ½ÑτÑ¡¿∩, ó »α«Γ¿ó¡«¼ ß½πτáÑ íπñÑΓ
óδºóá¡« «ß¡«ó¡«Ñ ¼Ñ¡ε á¡Γ¿ó¿απßá. ä½∩ ¿ß»«½∞º«óá¡¿∩ ó .BAT-Σá⌐½áσ.
"/?" éδñáΓ∞ »«ñß¬áº¬π »« ¬«¼á¡ñá¼.
"êîƒ": ê¼∩ ¿½¿ ß»¿ß«¬ ¿¼±¡ Σá⌐½«ó ¿ ñ¿ß¬«ó ñ½∩ ΓÑßΓ¿α«óá¡¿∩ ¿½¿
ó«ßßΓá¡«ó½Ñ¡¿∩. é ¿¼Ñ¡¿ Σá⌐½á ¼«ª¡« ¿ß»«½∞º«óáΓ∞ º¡á¬¿ '?' ¿ '*'. àß½¿
π¬áºáΓ∞ Γ«½∞¬« ¿¼∩ ñ¿ß¬á, ¡á»α¿¼Ñα 'A:', Γ« ΓÑßΓ¿α«óáΓ∞ß∩ ¿½¿
ó«ßßΓá¡áó½¿óáΓ∞ß∩ íπñπΓ óßÑ Σá⌐½δ ß ¿¼Ñ¡á¼¿, ß««ΓóÑΓßΓóπεΘ¿¼¿ »«½ε Mask ó
ñ¿á½«úÑ Setup.
ìá»α¿¼Ñα, »« ¬«¼á¡ñÑ
AVP /W C:*.* D:\MY_PROG\*.EXE D: /Y /Q
íπñπΓ ΓÑßΓ¿α«óáΓ∞ß∩ óßÑ Σá⌐½δ ¡á ñ¿ß¬Ñ æ, ºáΓѼ óßÑ EXE-Σá⌐½δ ¡á ñ¿ß¬Ñ D ó
«ú½áó½Ñ¡¿¿ \MY_PROG ¿ ºáΓѼ óßÑ Σá⌐½δ ß ¿¼Ñ¡á¼¿, ß««ΓóÑΓßΓóπεΘ¿¼¿ »«½ε Mask
¡á ñ¿ß¬Ñ D. Åα¿ φΓ«¼ ó Σá⌐½ AVP.MSG íπñÑΓ ºá»¿ßá¡ ªπα¡á½ αáí«Γδ. Å«
«¬«¡τá¡¿¿ ΓÑßΓ¿α«óá¡¿∩ »α«¿º«⌐ñÑΓ óδσ«ñ ó DOS.
è«ñδ ó«ºóαáΓá (errorlevels)
───────────────────────────
ÉѺπ½∞ΓáΓδ ߬᡿α«óá¡¿∩ ñ«ßΓπ»¡δ τÑαѺ ¬«ñδ ó«ºóαáΓá (DOS Errorlevel) »α¿
¿ß»«½∞º«óá¡¿¿ »á¬ÑΓ¡δσ Σá⌐½«ó.
0 - é¿απß«ó ¡Ñ «í¡áαπªÑ¡«.
1 - æ¬á¡¿α«óá¡¿Ñ ¡Ñ ºá¬«¡τÑ¡«.
3 - ìá⌐ñÑ¡δ «íΩѬΓδ, »«ñ«ºα¿Γѽ∞¡δÑ ¡á ó¿απß.
4 - Äí¡áαπªÑ¡ ó¿απß.
5 - éßÑ «í¡áαπªÑ¡¡δÑ ó¿απßδ πñá½Ñ¡δ.
7 - öá⌐½ AVP.EXE »«óαѪñÑ¡.
10 - é¡πΓαÑ¡¡∩∩ «Φ¿í¬á »α«úαá¼¼δ AVP.EXE.
2.3. ô»αáó½Ñ¡¿Ñ ¿º ¼Ñ¡ε
────────────────────────────────────────────────────────────────────
Ç¡Γ¿ó¿απß¡δ⌐ ߬á¡Ñα ¿¼ÑÑΓ ßΓá¡ñáαΓ¡δ⌐ «¬«¡¡δ⌐ ¿¡ΓÑαΣÑ⌐ß. ä½∩ óδσ«ñá ó
«ß¡«ó¡δÑ ¼Ñ¡ε ¡Ñ«íσ«ñ¿¼« ¡áªáΓ∞ ¬½áó¿Φπ F10. ä½∩ »ÑαѼÑΘÑ¡¿∩ »« »«½∩¼ ¼Ñ¡δ
¿ß»«½∞ºπεΓß∩ ¬½áó¿Φ¿ »ÑαѼÑΘÑ¡¿∩ ¬παß«αá. ä«ßΓπ»¡δ »∩Γ∞ «ß¡«ó¡δσ ¼Ñ¡ε:
Scan (Alt-S)
View (Alt-V)
Edit (ALt-E) (óÑαß¿∩ Pro)
Tools (Alt-T)
Help (Alt-H)
2.3.1. îÑ¡ε Scan (Alt-S)
────────────────────────────────────────────────────────────────────
Å«ñ¼Ñ¡ε Scan ß«ñÑαª¿Γ ¬«¼á¡ñδ ΓÑßΓ¿α«óá¡¿∩/½ÑτÑ¡¿∩.
Scan│Test (F9) - ΓÑßΓ¿α«óá¡¿Ñ
────────────────────────────────────────────────────────────────────
Åα¿ ΓÑßΓ¿α«óá¡¿¿ AVP ¿ΘÑΓ π¬áºδóáѼδÑ »«½∞º«óáΓѽѼ «íΩѬΓδ ¿ »α«óÑα∩ÑΓ ¿σ
¡á ¡á½¿τ¿Ñ ó¿απßá. Åα¿ φΓ«¼ ó ¿¡Σ«α¼áµ¿«¡¡δÑ «¬¡á íπñπΓ óδñáóáΓ∞ß∩
ß««ΓóÑΓßΓóπεΘ¿Ñ ß««íΘÑ¡¿∩.
ÅÑαÑñ ºá»π߬«¼ á¡Γ¿ó¿απßá »«∩ó½∩ÑΓß∩ ºá»α«ß ¡á ΓÑßΓ¿α«óá¡¿Ñ/½ÑτÑ¡¿Ñ:
╔═[■]═════════════ Test ══════════════════╗
║ ║
║ Path _c:________________________ ║
║ ║
║ ║
║ OK ▄ Setup ▄ Cancel ▄ ║
║ ▀▀▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀ ║
╚═════════════════════════════════════════╝
Å«½Ñ "Path" ß«ñÑαª¿Γ ß»¿ß«¬ ñ¿ß¬«ó, »«ñ¬áΓὫú«ó ¿ ¿¼Ñ¡ Σá⌐½«ó, ¬«Γ«αδÑ
¡Ñ«íσ«ñ¿¼« »α«ß¬á¡¿α«óáΓ∞. 髺¼«ª¡« ¿ß»«½∞º«óá¡¿Ñ ß¿¼ó«½«ó '?' ¿ '*' ó
¿¼Ñ¡áσ Σá⌐½«ó ¿ '*' ó¼ÑßΓ« íπ¬óδ ñ¿ß¬á. àß½¿ ¿¼∩ Σá⌐½á ¡Ñ ºáñá¡« ∩ó¡« ¿½¿
¼á߬«⌐, Γ« ¼á߬á ñ½∩ »«¿ß¬á Σá⌐½«ó íÑαÑΓß∩ ¿º »«½∩ "Mask" «¬¡á Setup.
Åα¿¼Ñαδ:
C:\COMMAND.COM - ΓÑßΓ¿α«óáΓ∞/½Ñτ¿Γ∞ Σá⌐½ C:\COMMAND.COM
C:\*.COM - ΓÑßΓ¿α«óáΓ∞/½Ñτ¿Γ∞ óßÑ COM-Σá⌐½δ ñ¿ß¬á C:
C:*.* - ΓÑßΓ¿α«óáΓ∞/½Ñτ¿Γ∞ óßÑ Σá⌐½δ ñ¿ß¬á C:
C: D: E:*.COM - ΓÑßΓ¿α«óáΓ∞/½Ñτ¿Γ∞ óßÑ ßÑ¬Γ«αá ¿ Σá⌐½δ ß«
ßΓá¡ñáαΓ¡δ¼¿ αáßΦ¿αÑ¡¿∩¼¿ ñ¿ß¬«ó C: ¿ D:, ºáΓѼ
ΓÑßΓ¿α«óáΓ∞/½Ñτ¿Γ∞ óßÑ COM-Σá⌐½δ ñ¿ß¬á E:
*: - ΓÑßΓ¿α«óáΓ∞ óßÑ ñ¿ß¬¿ ß¿ßΓѼδ, ¡áτ¿¡á∩ ß C:
Åα¿ φΓ«¼ ¡á ñ¿ß¬áσ »α«óÑα∩εΓß∩ ºáúαπº«τ¡δÑ ßÑ¬Γ«αá
¿ Σá⌐½δ, ¿¼ÑεΘ¿Ñ ßΓá¡ñáαΓ¡δÑ αáßΦ¿αÑ¡¿∩.
çá¼Ñτá¡¿Ñ: ߬᡿α«óá¡¿Ñ »«ñ¬áΓὫú«ó, πñá½Ñ¡¡δσ ñ¿ß¬«ó ¿ ñαπú¿Ñ «»µ¿¿
ºáñáεΓß∩ ó ß««ΓóÑΓßΓóπεΘ¿σ »«½∩σ Setup ñ¿á½«úá.
Scan│Cure (Ctrl-F9) - ½ÑτÑ¡¿Ñ
────────────────────────────────────────────────────────────────────
Åα¿ ½ÑτÑ¡¿¿ AVP ¿ΘÑΓ π¬áºδóáѼδÑ »«½∞º«óáΓѽѼ «íΩѬΓδ ¿ »α«óÑα∩ÑΓ ¿σ ¡á
¡á½¿τ¿Ñ ó¿απßá. çáΓѼ, Ñß½¿ «í¡áαπªÑ¡ ó¿απß, ó«ßßΓá¡áó½¿óáÑΓ ºáαáªÑ¡¡δÑ
«íΩѬΓδ, Ñß½¿ φΓ« 󫺼«ª¡«. Åα¿ φΓ«¼ ó ¿¡Σ«α¼áµ¿«¡¡δÑ «¬¡á íπñπΓ óδñáóáΓ∞ß∩
ß««ΓóÑΓßΓóπεΘ¿Ñ ß««íΘÑ¡¿∩.
Åα¿ «í¡áαπªÑ¡¿¿ ó¿απßá ó αѪ¿¼Ñ "Cure" »«∩ó½∩ÑΓß∩ ºá»α«ß ¡á ½ÑτÑ¡¿Ñ:
╔═[■]═════════════ Cure Request ═════════════════╗
║ ║
║ File: E:\VIRUS\v.com ║
║ ║
║ Virus: Yankee ║
║ ║
║ Cure ▄ Delete ▄ Skip ▄ ║
║ ▀▀▀▀▀▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀ ║
║ Cure All ▄ Delete All▄ Cancel ▄ ║
║ ▀▀▀▀▀▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀ ║
╚════════════════════════════════════════════════╝
諼á¡ñδ:
Cure - ½Ñτ¿Γ∞ φëà Σá⌐½
Cure All - ½Ñτ¿Γ∞ óßÑ Σá⌐½δ íѺ ºá»α«ßá
Delete - ßΓÑαÑΓ∞ ºáαáªÑ¡¡δ⌐ Σá⌐½
Delete All - ßΓÑαÑΓ∞ óßÑ ºáαáªÑ¡¡δÑ Σá⌐½δ
Skip - »α«»πßΓ¿Γ∞ ½ÑτÑ¡¿Ñ φΓ«ú« Σá⌐½á
Cancel - »αѬαáΓ¿Γ∞ ߬᡿α«óá¡¿Ñ
Scan│RAM Cure - ½ÑτÑ¡¿Ñ «»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿
────────────────────────────────────────────────────────────────────
Åα¿ ½ÑτÑ¡¿¿ «»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿ AVP.EXE »«ñßτ¿ΓδóáÑΓ τ¿ß½« ß¿ßΓѼ¡δσ íπΣÑα«ó
¿ ßαáó¡¿óáÑΓ Ñú« ß« º¡áτÑ¡¿Ñ¼ ó Σá⌐½Ñ CONFIG.SYS, Γαáßß¿απÑΓ óÑ¬Γ«αδ
»αÑαδóá¡¿⌐, »α«ß¼áΓα¿óáÑΓ ß¿ßΓѼ¡δÑ í½«¬¿ «»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿. àß½¿ »α¿ φΓ«¼
«í¡áαπªÑ¡ ó¿απß, Γ« AVP ñѺá¬Γ¿ó¿απÑΓ Ñú«, Γ.Ñ. ¿ß»αáó½∩ÑΓ ¬«ñδ ó¿απßá
Γᬿ¼ «íαẫ¼, τΓ«íδ «¡ (ó¿απß) ó ñá½∞¡Ñ⌐ΦѼ ¡Ñ »αÑ»∩ΓßΓó«óá½ σ«ñπ
ΓÑßΓ¿α«óá¡¿∩ ¿½¿ ½ÑτÑ¡¿∩ Σá⌐½«ó ¿ ßÑ¬Γ«α«ó. ¥Γá «»Ñαᵿ∩ »α«¿ºó«ñ¿Γß∩
áóΓ«¼áΓ¿τÑ߬¿ »α¿ ßΓáαΓÑ »α«úαá¼¼δ, ¡« ¼«ªÑΓ íδΓ∞ «Γ¬½ετÑ¡á. 漫Γα¿ ΓᬪÑ
"Scan│Setup".
Scan│Cure & make CRC - ½ÑτÑ¡¿Ñ ¿ ß«ºñá¡¿Ñ CRC Γáí½¿µδ (¬«¡Γα«½∞¡δσ ßπ¼¼)
────────────────────────────────────────────────────────────────────
ä½∩ óßÑσ ߬᡿απѼδσ «íΩÑ¬Γ«ó »«ñßτ¿Γδóáεß∩ ¬«¡Γα«½∞¡δÑ ßπ¼¼δ ¿ ºá¡«ß∩Γß∩ ó
CRC Γáí½¿µπ. Åα¿ φΓ«¼ ºáαáªÑ¡¡δÑ «íΩѬΓδ ß¡áτá½á ó«ßßΓá¡áó½¿óáεΓß∩. è«úñá
CRC Γáí½¿µá ß«ºñá¡á, ¿ß»«½∞º«óá¡¿Ñ Use CRC «»µ¿¿ ó ñ¿á½«úÑ Setup »«ºó«½∩ÑΓ
¬«¡Γα«½¿α«óáΓ∞ ¿º¼Ñ¡Ñ¡¿∩ ó ߬᡿απѼδσ «íΩѬΓáσ ¿ «ñ¡«óαѼѡ¡« π߬«α∩ÑΓ
»α«µÑßß ß¬á¡¿α«óá¡¿∩ »«τΓ¿ ó ñóá αáºá.
Scan│Setup - ¡áßΓα«⌐¬¿
────────────────────────────────────────────────────────────────────
Åα¿ ¬«¼á¡ñÑ Setup óδó«ñ¿Γß∩ «¬¡« ¡áßΓα«⌐¬¿ ΓÑßΓ¿α«óá¡¿∩/½ÑτÑ¡¿∩:
╔═[■]═════════════════════════ Scan Setup ═════════════════════════════╗
║ ║
║ Path: _*:________________________ Options ║
║ [X] Load for cure ║
║ Mask: Sector options [ ] Beep ║
║ ( ) Programs [X] MBR [X] Show tree ║
║ (*) All files [X] Boot [X] Split messages ║
║ ( ) User defined: [X] FAT [X] Auto test dialog ║
║ *.exe *.com ║
║ File options Set options for: ║
║ Mode [ ] Subdirectories ║
║ [X] Warnings [X] Remote disks Speed ▄ ║
║ [X] Code analyzer [X] Packed files ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ ║
║ [ ] Redundant scan [X] Archive files Reliability ▄ ║
║ [ ] Use CRC [X] Cure readonly ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ ║
║ Alarm! ▄ ║
║ Objects Memory options ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ ║
║ [X] Sectors [X] Interrupts ║
║ [X] Files [X] Buffers ║
║ [X] Memory ║
║ OK ▄ Save ▄ Cancel ▄ ║
║ ▀▀▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀ ║
╚══════════════════════════════════════════════════════════════════════╝
Path
────
çñÑß∞ ºáñáÑΓß∩ ß»¿ß«¬ ñ¿ß¬«ó, »«ñ¬áΓὫú«ó ¿ ¿¼Ñ¡ Σá⌐½«ó, ¬«Γ«αδÑ
¡Ñ«íσ«ñ¿¼« »α«ß¬á¡¿α«óáΓ∞.
Mask
────
¥Γ«Γ »ÑαѬ½ετáΓѽ∞ ºáñáÑΓ ¼á߬¿ Σá⌐½«ó, ¬«Γ«αδÑ íπñπΓ ΓÑßΓ¿α«óáΓ∞ß∩ »«
π¼«½τá¡¿ε (Ñß½¿ ¼á߬á ∩ó¡« ¡Ñ ºáñá¡á ó »«½Ñ 'Path').
æΓá¡ñáαΓ¡«Ñ »«½«ªÑ¡¿Ñ »ÑαѬ½ετáΓѽ∩ - "Programs" «º¡áτáÑΓ, τΓ« íπñπΓ
»α«óÑα∩Γ∞ß∩ óßÑ Σá⌐½δ (ó Γ.τ. ó áασ¿óáσ), ¿¼ÑεΘ¿Ñ αáßΦ¿αÑ¡¿∩ *.BAT, *.COM,
*.EXE, *.OV?, *.SYS.
Å«½«ªÑ¡¿Ñ »ÑαѬ½ετáΓѽ∩ "All files" ß««ΓóÑΓßΓóπÑΓ ¼á᪥ "*.*". Åα¿ φΓ«¼
íπñπΓ ΓÑßΓ¿α«óáΓ∞ß∩ óßÑ Σá⌐½δ ¬áΓὫú«ó, ºáñá¡¡δσ ó »«½Ñ "Path". ¥Γ« íδóáÑΓ
¡Ñ«íσ«ñ¿¼« ó ß½πτáÑ »«αáªÑ¡¿∩ ¡Ñ¬«Γ«α묨 Γ¿»á¼¿ ó¿απß«ó, ºáαáªáεΘ¿σ Σá⌐½δ
»α¿ ¿σ «Γ¬αδΓ¿¿ ¿½¿ ºá¬αδΓ¿¿, á Γá¬ªÑ ¡Ñ¬«Γ«α묨 ¿ºδß¬á¡¡δ¼¿ ¿½¿ ¡áσá½∞¡δ¼¿
ó¿απßἿ.
Åα¿ »«½«ªÑ¡¿¿ »ÑαѬ½ετáΓѽ∩ "User defined:" íπñπΓ ΓÑßΓ¿α«óáΓ∞ß∩ Σá⌐½δ,
ß««ΓóÑΓßΓóπεΘ¿Ñ ¼á߬á¼, π¬áºá¡¡δ¼ ó ß½ÑñπεΘѼ »«½Ñ.
Mode
────
¥Γ«Γ αáºñѽ ß«ñÑαª¿Γ »ÑαѬ½ετáΓѽ¿ «ß¡«ó¡δσ αѪ¿¼«ó ߬᡿α«óá¡¿∩.
"Warnings" ó¬½ετáÑΓ ñ«íáó«τ¡πε »α«µÑñπαπ »α«óÑન. Ä¡á óδó«ñ¿Γ
»αÑñπ»αѪñáεΘÑÑ ß««íΘÑ¡¿Ñ, Ñß½¿ ߬᡿απѼδ⌐ Σá⌐½/ßÑ¬Γ«α ß«ñÑαª¿Γ ¿º¼Ñ¡Ñ¡¡δ⌐
¿½¿ »«óαѪñÑ¡¡δ⌐ ó¿απß, á ΓᬪÑ, Ñß½¿ ó »á¼∩Γ¿ ¬«¼»∞εΓÑαá «í¡áαπªÑ¡á
»«ñ«ºα¿Γѽ∞¡á∩ »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ ¿¡ßΓαπ¬µ¿⌐.
"Code analyzer" ó¬½ετáÑΓ ¼Ñσá¡¿º¼ Code Analyzer.
"Redundant scan" ó¬½ετáÑΓ ¼Ñσá¡¿º¼ »«½¡«ú« ߬᡿α«óá¡¿∩ ß«ñÑন¼«ú« Σá⌐½á
ó¼ÑßΓ« ßΓá¡ñáαΓ¡«⌐ «íαáí«Γ¬¿ Γ«½∞¬« Γ«τѬ óσ«ñá. ¥Γ«Γ αѪ¿¼ αѬ«¼Ñ¡ñπÑΓß∩
¿ß»«½∞º«óáΓ∞ ó ß½πτáÑ ºáαáªÑ¡¿∩ Γᬿ¼¿ ó¿απßἿ ¬á¬ "3nop", ¬«Γ«αδ⌐
ºá»¿ßδóáÑΓ ßÑí∩ ó ßÑαÑñ¿¡π Σá⌐½á »«óÑασ ßΓáα«ú« ¬«ñá. é «ßΓá½∞¡δσ ß½πτá∩σ
¿ß»«½∞º«óá¡¿Ñ φΓ«ú« αѪ¿¼á ¡Ñ αѬ«¼Ñ¡ñπÑΓß∩, Γ.¬. »α«µÑßß ß¬á¡¿α«óá¡¿∩
ºá¼Ññ½∩ÑΓß∩ ó ¡Ñ߬«½∞¬« αáº, πóѽ¿τ¿óáÑΓß∩ Γá¬ªÑ óÑα«∩Γ¡«ßΓ∞ "½«ª¡δσ
ßαáíáΓδóá¡¿⌐" »α¿ ߬᡿α«óá¡¿¿ ¡ÑºáαáªÑ¡¡δσ Σá⌐½«ó.
"Use CRC" »α¿ó«ñ¿Γ ¬ ¿ß»«½∞º«óá¡¿ε Γáí½¿µδ CRC ñ½∩ «»αÑñѽѡ¿∩ ¿º¼Ñ¡Ñ¡¿⌐ ó
߬᡿απѼδσ «íΩѬΓáσ. ¥Γá Γáí½¿µá ñ«½ª¡á íδΓ∞ ß«ºñá¡á ¬«¼á¡ñ«⌐ "Cure & make
CRC".
Objects
───────
¥Γ«Γ αáºñѽ ß«ñÑαª¿Γ ß»¿ß«¬ «íΩÑ¬Γ«ó, »«ñ½ÑªáΘ¿σ ߬᡿α«óá¡¿ε.
"Sectors" ó¬½ετáÑΓ »α«µÑñπαπ ߬᡿α«óá¡¿∩ ß¿ßΓѼ¡δσ ßÑ¬Γ«α«ó, π¬áºá¡¡δσ
ó αáºñÑ½Ñ "Sector options".
"Files" ó¬½ετáÑΓ »α«µÑñπαπ ߬᡿α«óá¡¿∩ Σá⌐½«ó (ó Γ«¼ τ¿ß½Ñ Σá⌐½«ó ß
áΓα¿íπΓἿ System, Hidden ¿ ReadOnly), »α¿ φΓ«¼ αẽ¿τ¡δÑ αѪ¿¼δ
«»αÑñѽ∩εΓß∩ ó αáºñÑ½Ñ "File options".
"Memory" ó¬½ετáÑΓ »α«µÑñπαπ ߬᡿α«óá¡¿∩ ß¿ßΓѼ¡«⌐ »á¼∩Γ¿ (ó Γ«¼ τ¿ß½Ñ High
Memory Area, Ñß½¿ φΓ« ¡Ñ«íσ«ñ¿¼«), »α¿ φΓ«¼ αẽ¿τ¡δÑ αѪ¿¼δ «»αÑñѽ∩εΓß∩ ó
αáºñÑ½Ñ "Memory options".
Sector options
──────────────
¥Γ«Γ αáºñѽ ß«ñÑαª¿Γ ß»¿ß«¬ ß¿ßΓѼ¡δσ ßÑ¬Γ«α«ó, »«ñ½ÑªáΘ¿σ ߬᡿α«óá¡¿ε.
"MBR" ó¬½ετáÑΓ »α«µÑñπαπ ߬᡿α«óá¡¿∩ óßÑσ »Ñαóδσ ßÑ¬Γ«α«ó (Master Boot
Record) óßÑσ ñ«ßΓπ»¡δσ ½«¬á½∞¡δσ Σ¿º¿τÑ߬¿σ ñ¿ß¬«ó.
"Boot" ó¬½ετáÑΓ »α«µÑñπαπ ߬᡿α«óá¡¿∩ ºáúαπº«τ¡δσ ßÑ¬Γ«α«ó ½«¬á½∞¡δσ
½«ú¿τÑ߬¿σ ñ¿ß¬«ó, π¬áºá¡¡δσ ó »«½Ñ "Path".
"FAT" ó¬½ετáÑΓ »α«µÑñπαπ »α«óÑન File Allocation Table ¡á »«ñ«ºα¿Γѽ∞¡δÑ
ß¿Γπᵿ¿, Γá¬¿Ñ ¬á¬ »ßÑóñ«ßí«⌐¡δÑ ßÑ¬Γ«αá.
File options
────────────
¥Γ«Γ αáºñѽ ß«ñÑαª¿Γ «»µ¿¿ αѪ¿¼á ߬᡿α«óá¡¿∩ Σá⌐½«ó. æ¼. Γá¬ªÑ "Scan
Messages".
"Subdirectories" ºáßΓáó½∩ÑΓ ¼Ñσá¡¿º¼ ߬᡿α«óá¡¿∩ »α«σ«ñ¿Γ∞ ñÑαÑó«
»«ñ¬áΓὫú«ó, ¡áτ¿¡á∩ ß ¬áΓὫú«ó, π¬áºá¡¡δσ ó »«½Ñ "Path". àß½¿ ºáñá¡«
Γ«½∞¬« ¿¼∩ ñ¿ß¬á (¡á»α¿¼Ñα, "C:"), Γ« ߬᡿α«óá¡¿Ñ ¡áτ¿¡áÑΓß∩ ß ¬«α¡Ñó«ú«
¬áΓὫúá.
"Remote disks" »α¿ ¿ß»«½∞º«óá¡¿¿ ¼á߬¿ "*:" ó¬½ετáÑΓ ó ß»¿ß«¬ ñ¿ß¬«ó,
»«ñ½ÑªáΘ¿σ ߬᡿α«óá¡¿ε, ¡Ñ Γ«½∞¬« ½«¬á½∞¡δÑ, ¡« ¿ πñá½Ñ¡¡δÑ (ßÑΓÑóδÑ)
ñ¿ß¬¿. é »α«Γ¿ó¡«¼ ß½πτáÑ ΓÑßΓ¿α«óáΓ∞ß∩ íπñπΓ Γ«½∞¬« ½«¬á½∞¡δÑ ñ¿ß¬¿.
"Packed files" ó¬½ετáÑΓ Unpack Engine.
"Archive files" ó¬½ετáÑΓ Extract Engine.
"Cure readonly" αáºαÑΦáÑΓ ½ÑτÑ¡¿Ñ Σá⌐½«ó, »«¼ÑτÑ¡¡δσ ¬á¬ ReadOnly.
Memory options
──────────────
¥Γ«Γ αáºñѽ ß«ñÑαª¿Γ «»µ¿¿ αѪ¿¼á ߬᡿α«óá¡¿∩ »á¼∩Γ¿.
"Interrupts" ó¬½ετáÑΓ αѪ¿¼ Γαáßß¿α«ó¬¿ ¿ »α«óÑન ñ¿ß¬«óδσ ¿ ß¿ßΓѼ¡δσ
»αÑαδóá¡¿⌐. ¥Γá »α«µÑñπαá ¼«ªÑΓ ¬«¡Σ½¿¬Γ«óáΓ∞ ß ¡Ñ¬«Γ«α묨 αѺ¿ñÑ¡Γ¡δ¼¿
á¡Γ¿ó¿απß¡δ¼¿ πΓ¿½¿ΓἿ ¿ »α¿ó«ñ¿Γ∞ ¬ ½«ª¡δ¼ »αÑñπ»αѪñÑ¡¿∩¼. é φΓ«¼
ß½πτáÑ ½πτΦÑ πíαáΓ∞ Γá¬πε πΓ¿½¿Γπ ¿º »á¼∩Γ¿, τѼ «Γ¬½ετáΓ∞ "Interrupts",
Γ.¬. ¡Ñ¬«Γ«αδÑ αѺ¿ñÑ¡Γ¡δÑ ó¿απßδ »α¿ φΓ«¼ ¡Ñ ¼«úπΓ íδΓ∞ «í¡áαπªÑ¡δ.
"Buffers" ó¬½ετáÑΓ »α«óÑα¬π ¬«½¿τÑßΓóá ß¿ßΓѼ¡δσ íπΣÑα«ó ¿ ßαáó¡¿óáÑΓ φΓ«
τ¿ß½« ß π¬áºá¡¡δ¼ ó ßΓα«¬Ñ BUFFERS=xxx Σá⌐½á CONFIG.SYS. ìѬ«Γ«αδÑ πΓ¿½¿Γδ
(¡á»α¿¼Ñα QEMM) ¼«úπΓ ¿º¼Ñ¡∩Γ∞ Σ«α¼áΓ ß»¿ß¬á ß¿ßΓѼ¡δσ íπΣÑα«ó; ó φΓ«¼
ß½πτáÑ ¼«ªÑΓ ó«º¡¿¬áΓ∞ ½«ª¡«Ñ »αÑñπ»αѪñÑ¡¿Ñ.
Options
───────
¥Γ«Γ αáºñѽ ß«ñÑαª¿Γ «ßΓá½∞¡δÑ «»µ¿¿.
"Load for cure" «»αÑñѽ∩ÑΓ αѪ¿¼ ºáúαπº¬¿ á¡Γ¿ó¿απß¡«⌐ íáºδ ñá¡¡δσ ó
»á¼∩Γ∞. àß½¿ φΓá «»µ¿∩ «Γ¬½ετÑ¡á, Γ« ºáúαπªáεΓß∩ Γ«½∞¬« ñá¡¡δÑ, ¡Ñ«íσ«ñ¿¼δÑ
ñ½∩ ñÑΓÑ¬Γ¿α«óá¡¿∩ ó¿απßá, »α¿ φΓ«¼ ߬á¡Ñα ºá¡¿¼áÑΓ ¼Ñ¡∞ΦÑ «»ÑαáΓ¿ó¡«⌐
ß¿ßΓѼ¡«⌐ ¿ XMS »á¼∩Γ¿.
"Beep" π»αáó½∩ÑΓ »«ñáτÑ⌐ ºóπ¬«ó«ú« ß¿ú¡á½á »α¿ «í¡áαπªÑ¡¿¿ ó¿απß«ó.
"Show tree" «»αÑñѽ∩ÑΓ ó¿ñ ß««íΘÑ¡¿⌐, óδó«ñ¿¼δσ ó «¬¡« "Scan". Åα¿
«Γ¼ÑτÑ¡¡«⌐ «»µ¿¿ ß««íΘÑ¡¿∩ óδó«ñ∩Γß∩ ó ó¿ñÑ ñÑαÑóá »«ñ¬áΓὫú«ó, ó
»α«Γ¿ó¡«¼ ß½πτáÑ - »«½¡δ¼ ¿¼Ñ¡Ñ¼ Σá⌐½á.
"Split messages" »«ºó«½∩ÑΓ ¡á»αáó½∩Γ∞ ß««íΘÑ¡¿∩ αạ«ú« α«ñá ó αẽ¿τ¡δÑ
«¬¡á. Åα¿ φΓ«¼ «¬¡« "CheckUp" íπñÑΓ ß«ñÑαªáΓ∞ ¿¡Σ«α¼áµ¿ε « ¡ÑºáαáªÑ¡¡δσ ¿
¡Ñ ß«ñÑαªáΘ¿σ »«ñ«ºα¿Γѽ∞¡δσ ¿¡ßΓαπ¬µ¿⌐ Σá⌐½áσ. éßÑ «ßΓá½∞¡δÑ ß««íΘÑ¡¿∩
íπñπΓ ¡á»αáó½∩Γ∞ß∩ ó «¬¡« "Scan".
"Auto test dialog" óδºδóáÑΓ "Start dialog" ¡Ñ»«ßαÑñßΓóÑ¡¡«
»«ß½Ñ ºáúαπº¬¿ »α«úαá¼¼δ.
Set option for
──────────────
îδ σ«α«Φ« »«¡¿¼áѼ, τΓ« ó ¡áßΓα«⌐¬Ñ »α«úαá¼¼δ ºáñÑ⌐ßΓó«óá¡« ß½¿Φ¬«¼ ¼¡«ú«
ñ½∩ ¡Ñ»«ñú«Γ«ó½Ñ¡¡«ú« »«½∞º«óáΓѽ∩ «»µ¿⌐. ä½∩ Γ«ú«, τΓ«íδ «í½Ñúτ¿Γ∞ éáΦπ ¿
íѺ Γ«ú« ¡Ñ½Ñú¬πε ª¿º¡∞, ¼δ αÑΦ¿½¿ óóÑßΓ¿ ¡Ñ߬«½∞¬« ¬¡«»«¬, ¡áßΓαá¿óáεΘ¿σ
ß¿ßΓѼπ ¡á αẽ¿τ¡δÑ ß¿Γπᵿ¿.
"Speed" πßΓá¡áó½¿óáÑΓ «»µ¿¿ Γá¬, τΓ«íδ »α«µÑßß ß¬á¡¿α«óá¡¿∩ íδ½ ¡á¿í«½ÑÑ
íδßΓαδ¼.
"Reliability" ¡áßΓαá¿óáÑΓ ß¿ßΓѼπ ñ½∩ ñ«ßΓ¿ªÑ¡¿∩ ñ«ßΓáΓ«τ¡«⌐ ¡áñѪ¡«ßΓ¿.
"Alarm!" ñ«½ª¡á ¿ß»«½∞º«óáΓ∞ß∩ Γ«½∞¬« ó Γ«¼ ß½πτáÑ, Ñß½¿ ó¿απß »«αế½ éáΦ
¬«¼»∞εΓÑα ¿ ¡Ñ ¼«ªÑΓ íδΓ∞ «í¡áαπªÑ¡ »α¿ ¡áßΓα«⌐¬Ñ "Reliability".
é¡¿¼á¡¿Ñ! àß½¿ π éáß í«½∞Φ«⌐ «íΩѼ ñ¿ß¬«ó«⌐ »á¼∩Γ¿ ß Γδß∩τἿ Σá⌐½«ó ¿
í«½∞Φ¿¼ ¬«½¿τÑßΓó«¼ áασ¿ó«ó, ߬᡿α«óá¡¿Ñ ó αѪ¿¼Ñ "Alarm!" ¼«ªÑΓ
»«ΓαÑí«óáΓ∞ ¡Ñ߬«½∞¬¿σ τáß«ó.
Save button
───────────
æ«σαá¡¿Γ∞ ¡áßΓα«⌐¬π ó Σá⌐½Ñ ¬«¡Σ¿úπαᵿ¿ AVP.INI.
Scan│Save Report - ºá»¿ß∞ ß««íΘÑ¡¿⌐ ¡á ñ¿ß¬
────────────────────────────────────────────────────────────────────
諼á¡ñá ó맮óá ß«σαá¡Ñ¡¿∩ αѺπ½∞ΓáΓ«ó ΓÑßΓ¿α«óá¡¿∩/½ÑτÑ¡¿∩ ó Σá⌐½ ¿½¿ ¡á
»α¿¡ΓÑα. Åα¿ ¬«¼á¡ñÑ Save Report óδó«ñ¿Γß∩ «¬¡« ¡áßΓα«⌐¬¿ «ΓτÑΓá:
╔═[■]════════════════ Report ════════════════════╗
║ ║
║ To ( ) Printer [X] Statistics ║
║ () File [X] Scan info ║
║ C:\AVP\AVP.msg [ ] Check up info ║
║ ║
║ OK ▄ Save Setup ▄ Cancel ▄ ║
║ ▀▀▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀ ║
╚════════════════════════════════════════════════╝
ÅÑαѬ½ετáΓѽ∞ 'To' »«ºó«½∩ÑΓ ¡á»αáó¿Γ∞ «ΓτÑΓ ¡á »α¿¡ΓÑα ¿½¿ ó «»αÑñѽѡ¡δ⌐
Σá⌐½.
è½ετ¿:
Statistics - ó¬½ετ¿Γ∞ ó «ΓτÑΓ ßΓáΓ¿ßΓ¿τÑ߬πε ¿¡Σ«α¼áµ¿ε
Scan info - ó¬½ετ¿Γ∞ ó «ΓτÑΓ ¿¡Σ«α¼áµ¿ε « ߬᡿α«óá¡¿¿
Check up info - ó¬½ετ¿Γ∞ ó «ΓτÑΓ ¿¡Σ«α¼áµ¿ε « ¡ÑºáαáªÑ¡¡δσ «íΩѬΓáσ
Save Setup
æ«σαá¡¿Γ∞ ¡áßΓα«⌐¬π ó Σá⌐½Ñ ¬«¡Σ¿úπαᵿ¿ AVP.INI.
Scan│Dos Shell - óαѼѡ¡δ⌐ óδσ«ñ ó DOS
────────────────────────────────────────────────────────────────────
êß»«½∞ºπ⌐ΓÑ ¬«¼á¡ñπ DOS Shell ñ½∩ óαѼѡ¡«ú« ºá»πß¬á ¬«¼á¡ñ¡«ú« »α«µÑßß«αá
COMMAND.COM. ä½∩ ó«ºóαáΘÑ¡¿∩ ó «í«½«τ¬π ¡áíÑα¿ΓÑ EXIT ó ¬«¼á¡ñ¡«⌐ ßΓ᫬Ñ.
Scan│Exit - óδσ«ñ
────────────────────────────────────────────────────────────────────
ä½∩ «¬«¡τá¡¿∩ αáí«Γδ ß »α«úαá¼¼«⌐ ¿ óδσ«ñá ó DOS ¡Ñ«íσ«ñ¿¼« ¡áªáΓ∞ Alt-X.
àß½¿ ó ¬«¼á¡ñ¡«⌐ ßΓα«¬Ñ ºáñá¡á «»µ¿∩ /Q, Γ« «¬«¡τá¡¿Ñ αáí«Γδ »α«¿º«⌐ñÑΓ
áóΓ«¼áΓ¿τÑ߬¿ »« «¬«¡τá¡¿¿ ߬᡿α«óá¡¿∩. æ¼. Γá¬ªÑ "è«ñδ ó«ºóαáΓá".
2.3.2. îÑ¡ε View (Alt-V)
────────────────────────────────────────────────────────────────────
îÑ¡ε View ß«ñÑαª¿Γ ¬«¼á¡ñδ «Γ¬αδΓ¿∩, ºá¬αδΓ¿∩ «¬«¡ ¿ «ßπΘÑßΓó½∩ÑΓ ñαπú¿Ñ
«»Ñαᵿ¿ π»αáó½Ñ¡¿∩ ¿¡ΓÑαΣÑ⌐ß«¼. ü«½∞Φ¿¡ßΓó« «¬«¡ ß«ñÑαª¿Γ ßΓá¡ñáαΓ¡δÑ
φ½Ñ¼Ñ¡Γδ π»αáó½Ñ¡¿∩: ½¿¡¿¿ »α«¬απΓ¬¿, ¬¡«»¬¿ ºá¬αδΓ¿∩ ¿ αáß»áσ¿óá¡¿∩ «¬«¡.
View│Scan Window (F7) - «Γ¬αδΓ∞ «¬¡« Scan
────────────────────────────────────────────────────────────────────
¥Γá ¬«¼á¡ñá «Γ¬αδóáÑΓ «¬¡« Scan. é «¬¡« Scan óδñáεΓß∩ ß««íΘÑ¡¿∩ « σ«ñÑ
ΓÑßΓ¿α«óá¡¿∩ »á¼∩Γ¿, ßÑ¬Γ«α«ó ¿ Σá⌐½«ó; ß««íΘÑ¡¿∩ « »«αáªÑ¡¿¿ ó¿απß«¼ ¿½¿ «
ß¿Γπᵿ∩σ, "»«ñ«ºα¿Γѽ∞¡δσ" ¡á ó¿απß; ¿¼Ñ¡á Σá⌐½«ó, 𠬫ëαδσ «í¡áαπªÑ¡δ
¡Ñß«ó»áñÑ¡¿∩ ß ¬«¡Γα«½∞¡«⌐ ßπ¼¼«⌐; ¡Ñ¬«Γ«αδÑ ñαπú¿Ñ ß««íΘÑ¡¿∩. Ĭ¡«
«Γ¬αδóáÑΓß∩ áóΓ«¼áΓ¿τÑ߬¿ »α¿ ¡áτá½Ñ »«¿ß¬á ó¿απß«ó.
View│Check Up Window (Alt-F7) - «Γ¬αδΓ∞ «¬¡« Check Up
────────────────────────────────────────────────────────────────────
¥Γá ¬«¼á¡ñá «Γ¬αδóáÑΓ «¬¡« Check Up. é «¬¡« Check Up óδñáεΓß∩ ¿¼Ñ¡á
ßÑ¬Γ«α«ó ¿ Σá⌐½«ó, Ñß½¿ ó¿απß ó ¡¿σ ¡Ñ ¡á⌐ñÑ¡.
View│Statistics - »α«ß¼«Γα ßΓáΓ¿ßΓ¿¬¿
────────────────────────────────────────────────────────────────────
諼á¡ña Statistics ¿ß»«½∞ºπÑΓß∩ ñ½∩ »α«ß¼«Γαá ßΓáΓ¿ßΓ¿τÑ߬«⌐ ¿¡Σ«α¼áµ¿¿ «
߬᡿α«óá¡¿¿.
View│Clear Messages - πñ὿Γ∞ ß««íΘÑ¡¿∩
────────────────────────────────────────────────────────────────────
諼á¡ñá Clear Messages ¿ß»«½∞ºπÑΓß∩ ñ½∩ πñá½Ñ¡¿∩ óßÑσ ß««íΘÑ¡¿⌐ ¿º «¬«¡
Scan ¿ Check Up.
View│25/50 Lines (Alt-F9) - ¿º¼Ñ¡¿Γ∞ αẼÑα φ¬αá¡á
────────────────────────────────────────────────────────────────────
諼á¡ña 25/50 Lines ¿ß»«½∞ºπÑΓß∩ ñ½∩ ¿º¼Ñ¡Ñ¡¿∩ αѪ¿¼á αáí«Γδ φ¬αá¡á.
View│Zoom (F5) - πóѽ¿τ¿Γ∞ αẼÑα «¬¡á
────────────────────────────────────────────────────────────────────
諼á¡ña Zoom ¿ß»«½∞ºπÑΓß∩ ñ½∩ πóѽ¿τÑ¡¿∩ αẼÑα«ó á¬Γ¿ó¡«ú« «¬¡á. àß½¿ «¬¡«
πªÑ πóѽ¿τÑ¡«, Γ« «¡« ó«ßßΓá¡áó½¿óáÑΓ »Ñαó«¡áτá½∞¡δÑ αẼÑαδ.
View│Next (F6) - ß½ÑñπεΘÑÑ «¬¡«
────────────────────────────────────────────────────────────────────
諼á¡ña Next ¿ß»«½∞ºπÑΓß∩ ñ½∩ µ¿¬½¿τÑ߬«ú« »ÑαÑσ«ñá ó ß½ÑñπεΘÑÑ á¬Γ¿ó¡«Ñ
«¬¡«.
View│Close (Alt-F3) - ºá¬αδΓ∞ «¬¡«
────────────────────────────────────────────────────────────────────
諼á¡ñá Close ¿ß»«½∞ºπÑΓß∩ ñ½∩ ºá¬αδΓ¿∩ á¬Γ¿ó¡«ú« «¬¡á.
View│Resize (Ctrl-F5) - ¿º¼Ñ¡¿Γ∞ αẼÑα «¬¡á
────────────────────────────────────────────────────────────────────
諼á¡ñá Resize ¿ß»«½∞ºπÑΓß∩ ñ½∩ ¿º¼Ñ¡Ñ¡¿∩ αẼÑαá ¿ »«½«ªÑ¡¿∩ á¬Γ¿ó¡«ú« «¬¡á.
êß»«½∞ºπ⌐ΓÑ UP,DN,LT,RT ñ½∩ »ÑαѼÑΘÑ¡¿∩, SHIFT-(UP,DN,LT,RT) ñ½∩ ¿º¼Ñ¡Ñ¡¿∩
αẼÑαá «¬¡á. Å« «¬«¡τá¡¿¿ ¡áßΓα«⌐¬¿ ¡áª¼¿ΓÑ ENTER.
2.3.3. îÑ¡ε Edit (ALt-E) (óÑαß¿∩ Pro)
────────────────────────────────────────────────────────────────────
îÑ¡ε Edit ¿ß»«½∞ºπÑΓß∩ ñ½∩ αÑñá¬Γ¿α«óá¡¿∩ á¡Γ¿ó¿απß¡δσ íẠñá¡¡δσ.
Edit│Open Base (F3) - «Γ¬αδΓ∞ íáºπ
────────────────────────────────────────────────────────────────────
諼á¡ñá Open Base óδºδóáÑΓ ñ¿á½«ú«ó«Ñ «¬¡«, »α¿ »«¼«Θ¿ ¬«Γ«α«ú« óδí¿αáÑΓß∩
Σá⌐½ ß á¡Γ¿ó¿απß¡«⌐ íẫ⌐ ñá¡¡δσ ñ½∩ αÑñá¬Γ¿α«óá¡¿∩ ó αÑñá¬Γ«αÑ íáº.
Edit│Close Base (Alt-F3) - ºá¬αδΓ∞ íáºπ
────────────────────────────────────────────────────────────────────
諼á¡ñá Close Base ¿ß»«½∞ºπÑΓß∩ ñ½∩ ºá¬αδΓ¿∩ á¬Γ¿ó¡«⌐ íáºδ.
Edit│Save Base (F2) - ß«σαá¡¿Γ∞ íáºπ ¡á ñ¿ß¬
────────────────────────────────────────────────────────────────────
諼á¡ñá Save Base ¿ß»«½∞ºπÑΓß∩ ñ½∩ ß«σαá¡Ñ¡¿∩ ¿º¼Ñ¡Ñ¡¿⌐ ó á¬Γ¿ó¡«⌐ íáºÑ.
Edit│Save All (Ctrl-F2) - ß«σαá¡¿Γ∞ óßÑ íáºδ ¡á ñ¿ß¬
────────────────────────────────────────────────────────────────────
諼á¡ñá Save All ¿ß»«½∞ºπÑΓß∩ ñ½∩ ß«σαá¡Ñ¡¿∩ ¿º¼Ñ¡Ñ¡¿⌐ ó« óßÑσ «Γ¬αδΓδσ
íáºáσ.
Edit│Cut (Shift-Del) - πñ὿Γ∞ ¿ »«¼ÑßΓ¿Γ∞ ó íπΣÑα
────────────────────────────────────────────────────────────────────
諼á¡ñá Cut ¿ß»«½∞ºπÑΓß∩ ñ½∩ »ÑαÑ¡«ßá ºá»¿ß¿ ó íπΣÑα. Å«ß½Ñ φΓ«ú« ¼«ª¡«
¿ß»«½∞º«óáΓ∞ ¬«¼á¡ñπ Paste ñ½∩ óßΓáó¬¿ ºá»¿ß¿ ó íáºπ ¿º íπΣÑαá.
Edit│Copy (Ctrl-Ins) - ߬«»¿α«óáΓ∞ ó íπΣÑα
────────────────────────────────────────────────────────────────────
諼á¡ñá Copy ¿ß»«½∞ºπÑΓß∩ ñ½∩ ¬«»¿α«óá¡¿∩ ºá»¿ß¿ ó íπΣÑα. Å«ß½Ñ φΓ«ú« ¼«ª¡«
¿ß»«½∞º«óáΓ∞ ¬«¼á¡ñπ Paste ñ½∩ óßΓáó¬¿ ºá»¿ß¿ ó íáºπ ¿º íπΣÑαá.
Edit│Paste (Shift-Ins) - ߬«»¿α«óáΓ∞ ¿º íπΣÑαá
────────────────────────────────────────────────────────────────────
諼á¡ñá Paste ¿ß»«½∞ºπÑΓß∩ ñ½∩ óßΓáó¬¿ ºá»¿ß¿ ó íáºπ ¿º íπΣÑαá. ä½∩ ºá»¿ß¿
ó íπΣÑα ¿ß»«½∞ºπ⌐ΓÑ ¬«¼á¡ñδ Copy ¿ Cut.
Edit│Active Bases (F4) - á¬Γ¿ó¡δÑ íáºδ
────────────────────────────────────────────────────────────────────
諼á¡ñá Active Bases óδºδóáÑΓ ñ¿á½«ú«ó«Ñ «¬¡« ñ½∩ αÑñá¬Γ¿α«óá¡¿∩ ß»¿ß¬á
á¬Γ¿ó¡δσ ó« óαѼ∩ ߬᡿α«óá¡¿∩ íáº.
2.3.4. îÑ¡ε Tools (Alt-T)
────────────────────────────────────────────────────────────────────
îÑ¡ε Tools ß«ñÑαª¿Γ ¬«¼á¡ñδ ß«ºñá¡¿∩ αѺÑαó¡«⌐ ¬«»¿¿ ß¿ßΓѼ¡δσ «í½áßΓÑ⌐
ñ¿ß¬á ¿ ¿σ ó«ßßΓá¡«ó½Ñ¡¿∩.
Tools│Backup system area - ºá»«¼¡¿Γ∞ ß¿ßΓѼ¡δÑ «í½áßΓ¿
────────────────────────────────────────────────────────────────────
¥Γá ¬«¼á¡ñá ¿ß»«½∞ºπÑΓß∩ ñ½∩ ß«ºñá¡¿∩ αѺÑαó¡«⌐ ¬«»¿¿ ß¿ßΓѼ¡δσ «í½áßΓÑ⌐
¬«¼»∞εΓÑαá (CMOS info, MBR (HD 0), Boot sector (Active partition)).
è«»¿∩ ß«ºñáÑΓß∩ ¡á ú¿í¬«¼ ñ¿ß¬Ñ (ä¿ß¬«ó«ñ A:) ó Σá⌐½Ñ AVP.SBK.(Rescue disk)
Åα¿ »«αáªÑ¡¿¿ φΓ¿σ «í½áßΓÑ⌐ ¡Ñ¿ºóÑßΓ¡δ¼ ó¿απß«¼ 󫺼«ª¡« ¿σ ó«ßßΓá¡«ó½Ñ¡¿Ñ
¿º αѺÑαó¡«⌐ ¬«»¿¿ »α¿ »«¼«Θ¿ ¬«¼á¡ñδ "Restore system area".
Tools│Restore system area - ó«ßßΓá¡«ó¿Γ∞ ß¿ßΓѼ¡δÑ «í½áßΓ¿
────────────────────────────────────────────────────────────────────
¥Γá ¬«¼á¡ñá ¿ß»«½∞ºπÑΓß∩ ñ½∩ ó«ßßΓá¡«ó½Ñ¡¿∩ ß¿ßΓѼ¡δσ «í½áßΓÑ⌐ ¬«¼»∞εΓÑαá
(CMOS info, MBR (HD 0), Boot sector (Active partition)) ¿º αѺÑαó¡«⌐ ¬«»¿¿
ó ß½πτáÑ »«αáªÑ¡¿∩ φΓ¿σ «í½áßΓÑ⌐ ¡Ñ¿ºóÑßΓδ¼ ó¿απß«¼.
ÉѺÑαó¡á∩ ¬«»¿∩ ñ«½ª¡á íδΓΓ∞ »αÑñóáα¿Γѽ∞¡« ß«ºñá¡á »α¿ »«¼«Θ¿
¬«¼á¡ñδ "Backup system area".
è«»¿∩ ß«ºñáÑΓß∩ ¡á Σ½«»»¿-ñ¿ß¬Ñ A: ó Σá⌐½Ñ AVP.SBK. (Rescue disk).
2.4. ǡ὿ºáΓ«α ¬«ñá (Code Analyzer)
────────────────────────────────────────────────────────────────────
Code Analyzer (φóα¿ßΓ¿τÑ߬¿⌐ ߬á¡Ñα) »α«óÑα∩ÑΓ ¬«ñδ »« αáº¡δ¼ óÑΓó∩¼
á½ú«α¿Γ¼á ߬᡿απѼ«⌐ »α«úαá¼¼δ ¡á ¡á½¿τ¿Ñ ó¿απß«»«ñ«í¡δσ ¿¡ßΓαπ¬µ¿⌐ ¿
óδñáÑΓ ß««íΘÑ¡¿Ñ, Ñß½¿ «í¡áαπªÑ¡á ¬«¼í¿¡áµ¿∩ ¬«¼á¡ñ, Γᬿσ ¬á¬
«Γ¬αδΓ¿Ñ/ºá»¿ß∞ ó Σá⌐½, »ÑαÑσóáΓ óÑ¬Γ«α«ó »αÑαδóá¡¿⌐ ¿ Γ.ñ. æ««íΘÑ¡¿∩
óδñáεΓß∩ ó Σ«α¼áΓÑ:
: virus Type XXXX suspicion ([encrypted],tail)
úñÑ
"XXXX" ∩ó½∩ÑΓß∩ «ñ¡«⌐ ¿º ßΓ᫬:
Com - Σá⌐½ óδú½∩ñ¿Γ ¬á¬ ºáαáªÑ¡¡δ⌐ ¡Ñ¿ºóÑßΓ¡δ¼ ó¿απß«¼, »«αáªáεΘ¿¼ COM
Σá⌐½δ;
Exe - Σá⌐½ óδú½∩ñ¿Γ ¬á¬ ºáαáªÑ¡¡δ⌐ ¡Ñ¿ºóÑßΓ¡δ¼ ó¿απß«¼, »«αáªáεΘ¿¼ EXE
Σá⌐½δ;
ComExe - Σá⌐½ óδú½∩ñ¿Γ ¬á¬ ºáαáªÑ¡¡δ⌐ ¡Ñ¿ºóÑßΓ¡δ¼ ó¿απß«¼, »«αáªáεΘ¿¼
Σá⌐½δ Σ«α¼áΓá COM ¿ EXE;
ComTSR, ExeTSR, ComExeTSR - Σá⌐½ óδú½∩ñ¿Γ ¬á¬ ºáαáªÑ¡¡δ⌐ ¡Ñ¿ºóÑßΓ¡δ¼
αѺ¿ñÑ¡Γ¡δ¼ ó¿απß«¼, »«αáªáεΘ¿¼ Σá⌐½δ Σ«α¼áΓá COM, EXE, ¿½¿ COM ¿ EXE
Σá⌐½δ;
Boot - Σá⌐½/ßÑ¬Γ«α óδú½∩ñ¿Γ ¬á¬ ºáαáªÑ¡¡δ⌐ ¡Ñ¿ºóÑßΓ¡δ¼ boot-ó¿απß«¼ ¿½¿
¬á¬ ¿¡ßΓá½½∩Γ«α boot-ó¿απßá;
Trojan - Σá⌐½ óδú½∩ñ¿Γ ¬á¬ Γα«∩¡ß¬á∩ »α«úαá¼¼á;
æΓ᫬á "encrypted" «º¡áτáÑΓ, τΓ« »«ñ«ºα¿Γѽ∞¡á∩ »α«úαá¼¼á ß«ñÑনΓ
»α«µÑñπαπ Φ¿Σα«ó¬¿; "tail" - αáßßΓ«∩¡¿Ñ «Γ Γ«τ¬¿ óσ«ñá ñ« ¬«¡µá Σá⌐½á.
è«¡Ñτ¡«, φëà á½ú«α¿Γ¼ ¼«ªÑΓ ñáóáΓ∞ ½«ª¡δÑ ßαáíáΓδóá¡¿∩ ¬á¬ ¿ ½εí«⌐
φóα¿ßΓ¿τÑ߬¿⌐ á½ú«α¿Γ¼, ¡« «¡ íδ½ »α«ΓÑßΓ¿α«óá¡ ¡á «τÑ¡∞ í«½∞Φ«¼ ¬«½¿τÑßΓóÑ
Σá⌐½«ó, ¿ »α¿ φΓ«¼ ¡Ñ í佫 »«½πτÑ¡« ¡¿ «ñ¡«ú« ñÑ⌐ßΓó¿Γѽ∞¡« ½«ª¡«ú«
ßαáíáΓδóá¡¿∩. àß½¿ éδ «í¡áαπª¿ΓÑ ½«ª¡δÑ ßαáíáΓδóá¡¿∩ ¡á ¡Ñ¿¡Σ¿µ¿α«óá¡¡δσ
Σá⌐½áσ, óδΦ½¿ΓÑ ó Σ¿α¼π èÇîê φ¬ºÑ¼»½∩αδ φΓ¿σ Σá⌐½«ó ñ½∩ á¡á½¿ºá ¿½¿ π¬áª¿ΓÑ
¿σ ¿¼Ñ¡á ó ß««ΓóÑΓßΓóπεΘ¿σ »α«úαá¼¼¡δσ »á¬ÑΓáσ.
Åα¿ ß¬á¡¿α«óá¡¿¿ ¬«ñá Code Analyzer »α«óÑα∩ÑΓ ¼¡«ú« óÑΓóÑ⌐ á½ú«α¿Γ¼á
»α«úαá¼¼δ (ó¬½ετá∩ ¡Ñ߬«½∞¬« »«ñπα«ó¡Ñ⌐). éß½ÑñßΓó¿Ñ φΓ«ú« AVP αáí«ΓáÑΓ
αáºá ó Γα¿ ¼Ññ½Ñ¡¡ÑÑ »α¿ ó¬½ετÑ¡¡«¼ Code Analyzer, τѼ »α¿ ó䬽ετÑ¡¡«¼. ì«
φëà ¼Ñσá¡¿º¼ «»αÑñѽ∩ÑΓ «¬«½« 80% ó¿απß«ó (ó¬½ετá∩ ¼¡«ú¿Ñ Φ¿Σα«óá¡¡δÑ) ¿º
¡áΦÑ⌐ ¬«½½Ñ¬µ¿¿, ¿ ¼δ »αÑñ»«½áúáѼ, τΓ« ¡«óδÑ ¡Ñ¿ºóÑßΓ¡δÑ ó¿απßδ íπñπΓ
«»αÑñѽ∩Γ∞ß∩ ß Γᬫ⌐ ªÑ óÑα«∩Γ¡«ßΓ∞ε.
ê »«ß½Ññ¡ÑÑ, ΓѬπΘá∩ óÑαß¿∩ Code Analyzer ¡Ñ πñá½∩ÑΓ ó¿απßδ ¿º Σá⌐½«ó ¿
ßÑ¬Γ«α«ó, »«¼ÑτÑ¡¡δσ ¬á¬ "suspicious". ä½∩ πñá½Ñ¡¿∩ ¡«óδσ ó¿απß«ó
«íαáΘá⌐ΓÑß∞ ¬ ß¿ßΓѼ¡δ¼ »α«úαá¼¼¿ßΓá¼.
2.5. îÑσá¡¿º¼ αáß»á¬«ó¬¿ ¿ß»«½¡∩Ѽδσ ¼«ñπ½Ñ⌐ (Unpacking Engine)
────────────────────────────────────────────────────────────────────
é ¡áßΓ«∩ΘÑÑ óαѼ∩ ñ«ßΓáΓ«τ¡« Φ¿α«¬« αáß»α«ßΓαá¡Ñ¡δ πΓ¿½¿Γδ π»á¬«ó¬¿
¿ß»«½¡∩Ѽδσ Σá⌐½«ó. Ä¡¿ ºá»¿ßδóáεΓ π»á¬«óá¡¡δ⌐ Σá⌐½ ¡á ñ¿ß¬ ß« ߻ѵ¿á½∞¡δ¼
¬«ñ«¼ αá߻ᬫóΘ¿¬á. Åα¿ ¿ß»«½¡Ñ¡¿¿ Γᬫú« Σá⌐½á φëà ¬«ñ αá߻ᬫóδóáÑΓ
¿ß»«½¡∩Ѽπε »α«úαá¼¼π ó «»ÑαáΓ¿ó¡πε »á¼∩Γ∞ ¿ »ÑαÑñáÑΓ Ñ⌐ π»αáó½Ñ¡¿Ñ.
Å«αáªÑ¡¡δÑ ó¿απß«¼ Σá⌐½δ ¼«úπΓ íδΓ∞ ¬«¼»αÑßß¿α«óá¡δ Γᬿ¼¿ »á¬«óΘ¿¬á¼¿ Γá¬
ªÑ, ¬á¬ ¿ ¡Ñ¿¡Σ¿µ¿α«óá¡¡δÑ. Åα¿ ß¬á¡¿α«óá¡¿¿ «íδτ¡δ¼¿ á¡Γ¿ó¿απß¡δ¼¿
»α«úαἼἿ »«αáªÑ¡¡δÑ Γᬿ¼ «íαẫ¼ Σá⌐½δ íπñπΓ «»αÑñѽ∩Γ∞ß∩ ¬á¬
¡Ñ¿¡Σ¿µ¿α«óá¡¡δÑ, Γᬠ¬á¬ Γѽ« ó¿απßá π»á¬«óá¡« ó¼ÑßΓÑ ß ¬«ñ«¼ »α«úαá¼¼δ.
Unpacking Engine αá߻ᬫóδóáÑΓ Σá⌐½δ, ß«ºñá¡¡δÑ ¡á¿í«½ÑÑ »«»π½∩α¡δ¼¿
πΓ¿½¿ΓἿ DIET, PKLITE, LZEXE ¿ EXEPACK αẽ¿τ¡δσ óÑαß¿⌐, ó« óαѼѡ¡δ⌐ Σá⌐½
¿ »ÑαÑñáÑΓ Ñú« ¡á »«óΓ«α¡πε »α«óÑα¬π. àß½¿ ó¡πΓα¿ π»á¬«óá¡¡«ú« Σá⌐½á
«í¡áαπªÑ¡ ¿ºóÑßΓ¡δ⌐ ó¿απß, Γ« 󫺼«ª¡« Ñú« πñá½Ñ¡¿Ñ. Åα¿ φΓ«¼ ¿ßσ«ñ¡δ⌐ Σá⌐½
ºá¼ÑΘáÑΓß∩ αá߻ᬫóá¡¡δ¼ ¿ óδ½ÑτÑ¡¡δ¼. îÑσá¡¿º¼ αáß»á¬«ó¬¿ ¬«ααÑ¬Γ¡«
αáí«ΓáÑΓ ß ¼¡«ú«¬αáΓ¡« π»á¬«óá¡¡δ¼¿ Σá⌐½á¼¿.
î«ñπ½∞ αáß»á¬«ó¬¿ αáí«ΓáÑΓ Γá¬ªÑ ß ¡Ñ¬«Γ«α묨 óÑαß¿∩¼¿ ¿¼¼π¡¿ºáΓ«α«ó (CPAV
¿ F-XLOCK) ¿ Φ¿ΣαπεΘ¿σ »α«úαá¼¼ (CryptCOM).
î«ñπ½∞ Unpacking Engine íπñÑΓ «í¡«ó½∩Γ∞ß∩ ñ½∩ ¡«óδσ »á¬«óΘ¿¬«ó, Φ¿Σα«óΘ¿¬«ó
¿ ¿¼¼π¡¿ºáΓ«α«ó.
2.6. îÑσá¡¿º¼ αáß»á¬«ó¬¿ ¿º áασ¿ó«ó (Extracting Engine)
────────────────────────────────────────────────────────────────────
Åα«í½Ñ¼á »«¿ß¬á ó¿απß«ó ó áασ¿ó¿α«óá¡¡δσ Σá⌐½áσ (ZIP, ARJ ¿ Γ.ñ.)
ßΓá¡«ó¿Γß∩ «ñ¡«⌐ ¿º ßá¼δσ ¡áßπΘ¡δσ. ê¡Σ¿µ¿α«óá¡¡δ⌐ Σá⌐½ ¼«ªÑΓ ºáΓá¿Γ∞ß∩ ¡á
¡Ñ߬«½∞¬« ¼Ñß∩µÑó ¿ ñáªÑ ½ÑΓ, ¿ íδßΓα« αáß»α«ßΓαá¡¿Γ∞ß∩ »α¿ ¡Ñó¡¿¼áΓѽ∞¡«¼
«íαáΘÑ¡¿¿ ß Γᬿ¼¿ áασ¿óἿ. Äß«íπε «»áß¡«ßΓ∞ »αÑñßΓáó½∩εΓ áασ¿óδ,
σαá¡∩Θ¿Ñß∩ ¡á BBS.
æ Γᬫ⌐ ß¿ΓπᵿÑ⌐ ß»αáó½∩ÑΓß∩ ¼Ñσá¡¿º¼ αáß»á¬«ó¬¿ ¿º áασ¿ó«ó Extracting
Engine. Åα¿ ß¬á¡¿α«óá¡¿¿ áασ¿ó«ó Extracting Engine αá߻ᬫóδóáÑΓ Σá⌐½δ ¿º
áασ¿óá »« ºáñá¡¡«⌐ ¼á᪥ ó« óαѼѡ¡δ⌐ Σá⌐½ ¿ »ÑαÑñáÑΓ Ñú« ñ½∩ »α«óÑન
«ß¡«ó¡«¼π ¼«ñπ½ε. Å«ß½Ñ »α«óÑન óαѼѡ¡δ⌐ Σá⌐½ π¡¿τΓ«ªáÑΓß∩.
ÆѬπΘá∩ óÑαß¿∩ Extracting Engine ß«ñÑαª¿Γ ¬«ñδ ñ½∩ αáß»á¬«ó¬¿ áασ¿ó«ó
Σ«α¼áΓá ARJ ¿ ZIP ßπΘÑßΓóπεΘ¿σ óÑαß¿⌐.
çá¼Ñτá¡¿∩:
1. AVP ¡Ñ πñá½∩ÑΓ ó¿απßδ ¿º áασ¿ó«ó, á Γ«½∞¬« ñÑΓÑ¬Γ¿απÑΓ ¿σ.
2. Extracting Engine ¡Ñ αá߻ᬫóδóáÑΓ áασ¿óδ, ºáΘ¿ΘÑ¡¡δÑ »áα«½Ñ¼.
é ½εí«¼ ß½πτáÑ AVP 2.0 ñÑΓÑ¬Γ¿απÑΓ ºáαáªÑ¡¡δ⌐ Σá⌐½, ñáªÑ Ñß½¿ «¡ ºáΦ¿Σα«óá¡
πΓ¿½¿Γ«⌐ CryptCOM, ºáΓѼ π»á¬«óá¡ PKLITE'«¼ ¿ ºá»¿ßá¡ ó áασ¿ó »α«úαá¼¼«⌐
PKZIP.
2.7. Help-ß¿ßΓѼá
────────────────────────────────────────────────────────────────────
æ¿ßΓÑ¼á »«ñ߬Ậ¿ (Help System) ñ«ßΓπ»¡á ó ½εí«⌐ ¼«¼Ñ¡Γ (Ñß½¿ ¡Ñ πñÑΓ
߬᡿α«óá¡¿Ñ ñ¿ß¬«ó). ä½∩ á¬Γ¿ó¿ºáµ¿¿ Help System ΓαÑíπÑΓß∩ ¡áªáΓ∞ ¬½áó¿ΦÑ
F1. è«¼í¿¡áµ¿∩ Alt-F1 óδºδóáÑΓ »αÑñδñπΘÑÑ «¬¡« »«ñ߬Ậ¿, ¬«¼í¿¡áµ¿¿ Alt-P
¿ Alt-N »ÑαÑó«ñ∩Γ Help System ¡á «ñ¡« «¬¡« ¡áºáñ/ó»ÑαÑñ »« ß»¿ß¬π «¬«¡
»«ñ߬ẫ¬.
ìѬ«Γ«αδÑ ó¿απßδ óδºδóáεΓ ó¿ñÑ« ¿½¿ ºóπ¬«óδÑ φΣΣѬΓδ. ¥Γ¿ φΣΣѬΓδ óδñѽѡδ
¿º ó¿απß«ó ¿ »«ñ¬½ετÑ¡δ ó íáºπ ñѼ«¡ßΓαᵿ⌐ φΣΣÑ¬Γ«ó. ä½∩ ó맮óá
ñѼ«¡ßΓαᵿ¿ (Ñß½¿ «¡á »«ñ¬½ετÑ¡á) ¡Ñ«íσ«ñ¿¼« ó «¬¡Ñ Help ¡áªáΓ∞ ¬«¼í¿¡áµ¿ε
Alt-D. éδσ«ñ ¿º ñѼ«ßΓαᵿ¿ - ESC.
ìѬ«Γ«αδÑ ó¿απßδ ¿½¿ ßѼÑ⌐ßΓóá ó¿απß«ó óδºδóáεΓ ¡Ñ «ñ¿¡, á ¡Ñ߬«½∞¬«
φΣΣÑ¬Γ«ó, ñ½∩ »α«ß¼«Γαá ß½ÑñπεΘÑú« φΣΣѬΓá ¡Ñ«íσ«ñ¿¼« ¡áªáΓ∞ »α«íѽ. Åα«íѽ
Γá¬ªÑ ß½ÑñπÑΓ ¡áª¿¼áΓ∞ ñ½∩ π߬«αÑ¡¿∩ »α«ß¼«Γαá ¡Ñ¬«Γ«αδσ ñѼ«¡ßΓαᵿ⌐,
¡á»α¿¼Ñα, ñѼ«¡ßΓαᵿ¿ »áñÑ¡¿∩ ß¿¼ó«½«ó ó¿απß«ó "Cascade".
é¡¿¼á¡¿Ñ! ìѬ«Γ«αδÑ ó¿απßδ »α¿ ó맮óÑ φΣΣÑ¬Γ«ó ó¡«ß∩Γ ¡Ñ«»áß¡δÑ ¿º¼Ñ¡Ñ¡¿∩ ó
ß¿ßΓѼ¡δÑ «í½áßΓ¿ ¬«¼»∞εΓÑαá, ¡á»α¿¼Ñα, »ÑαÑ»α«úαá¼¼¿απεΓ Γá⌐¼Ñα ¿½¿
µóÑΓ«óπε »á½¿Γαπ φ¬αá¡á. ¥Γ« ¼«ªÑΓ óδºóáΓ∞ ¡Ñ¬«ααÑ¬Γ¡πε αáí«Γπ ñαπú¿σ
φΣΣÑ¬Γ«ó.
äѼ«¡ßΓαᵿ∩ ¡Ñ¬«Γ«αδσ φΣΣÑ¬Γ«ó ¼«ªÑΓ óδºδóáΓ∞ß∩ ÆÄï£èÄ ¡á «»αÑñѽѡ¡«¼
Γ¿»Ñ áñá»ΓÑαá, VGA, CGA ¿½¿ HERCULES. é맮ó Γᬫú« φΣΣѬΓá »α¿ αáí«ΓÑ ¡á
ñαπú«¼ Γ¿»Ñ áñá»ΓÑαá ¼«ªÑΓ óδºóáΓ∞ ºáó¿ßá¡¿Ñ ¬«¼»∞εΓÑαá. ä½∩ »α«ß¼«Γαá
ó¿ñÑ«φΣΣÑ¬Γ«ó αѬ«¼Ñ¡ñπÑΓß∩ áñá»ΓÑα VGA.
ìѬ«Γ«αδÑ ¿º φΣΣÑ¬Γ«ó ¿ß»«½∞ºπεΓ ß»Ñµ¿á½∞¡δÑ αѪ¿¼δ αáí«Γδ ¡Ñ¬«Γ«αδσ
ß¿ßΓѼ¡δσ »«αΓ«ó. é αѺπ½∞ΓáΓÑ φΓ¿ φΣΣѬΓδ ¬«¡Σ½¿¬ΓπεΓ ß Γᬿ¼¿
»α¿½«ªÑ¡¿∩¼¿ ¬á¬ MS-Windows ¿½¿ QEMM. ÉѬ«¼Ñ¡ñπÑΓß∩ óδ⌐Γ¿ ¿º ¼¡«ú«ºáñáτ¡δσ
ß¿ßΓѼ (MS-Windows, OS/2, Desqview) »ÑαÑñ »α«ß¼«Γα«¼ φΣΣÑ¬Γ«ó.
2.8. 滿߫¬ ß««íΘÑ¡¿⌐ «¬¡á Scan
────────────────────────────────────────────────────────────────────
: ok.
é Σá⌐½Ñ/ßÑ¬Γ«αÑ ¡Ñ «í¡áαπªÑ¡« ó¿απß«ó ¿ »«ñ«ºα¿Γѽ∞¡δσ »«ß½Ññ«óáΓѽ∞¡«ßΓÑ⌐
¬«¼á¡ñ.
: virus NAME detected.
é Σá⌐½Ñ/ßÑ¬Γ«αÑ «í¡áαπªÑ¡ ó¿απß NAME. ä½∩ Γ«ú«, τΓ«íδ πñ὿Γ∞ ó¿απß, ¡πª¡«
ºá»πßΓ¿Γ∞ ߬᡿α«óá¡¿Ñ ó αѪ¿¼Ñ Cure (Ctrl-F9).
: virus NAME cured.
é¿απß πñá½Ñ¡ ¿º Σá⌐½á/ßÑ¬Γ«αá ¿½¿ »α«¿ºóÑñÑ¡á ñѺá¬Γ¿óᵿ∩ »á¼∩Γ¿ ó ß½πτáÑ
»«αáªÑ¡¿∩ αѺ¿ñÑ¡Γ¡δ¼ ó¿απß«¼. àß½¿ óδñá¡« ß««íΘÑ¡¿Ñ « ¡á½¿τ¿¿ ó¿απßá ó
»á¼∩Γ¿, Γ« »« «¬«¡τá¡¿¿ αáí«Γδ AVP.EXE ªÑ½áΓѽ∞¡« »α«¿ºóÑßΓ¿ »ÑαѺáúαπº¬π
¬«¼»∞εΓÑαá ñ½∩ íѺ«»áß¡«ßΓ¿.
: virus NAME deleted.
ê¡Σ¿µ¿α«óá¡¡δ⌐ Σá⌐½ πñá½Ñ¡ ß ñ¿ß¬á.
: virus NAME cure failed.
öá⌐½ ¡Ñ¬«ααÑ¬Γ¡« ºáαáªÑ¡ ó¿απß«¼, ½ÑτÑ¡¿Ñ ¼«ªÑΓ ¿ß»«αΓ¿Γ∞ Σá⌐½; ½¿í«
Σá⌐½/ßÑ¬Γ«α ¡áσ«ñ¿Γß∩ ¡á ºáΘ¿ΘÑ¡¡«¼ «Γ ºá»¿ß¿ ñ¿ß¬Ñ.
: virus NAME cure skipped.
ïÑτÑ¡¿Ñ Σá⌐½á/ßÑ¬Γ«αá »α«»πΘÑ¡« »«½∞º«óáΓѽѼ.
: virus NAME cure cancelled.
ïÑτÑ¡¿Ñ Σá⌐½á/ßÑ¬Γ«αá »αÑαóá¡« »«½∞º«óáΓѽѼ.
: virus NAME warning (tail).
Äí¡áαπªÑ¡« ß«τÑΓá¡¿Ñ ¬«¼á¡ñ, ¬«Γ«α«Ñ »α¿¡áñ½Ñª¿Γ ó¿απßπ "NAME", ¡«
ñá½∞¡Ñ⌐Φá∩ »α«óÑα¬á »«¬áºδóáÑΓ, τΓ« φΓ« ¡Ñ «¡. àß½¿ Γᬿσ ß««íΘÑ¡¿⌐ ¼¡«ú«,
¿ º¡áτÑ¡¿∩ "tail" π ¡¿σ «ñ¿¡á¬«óδ, Γ« «τÑ¡∞ óÑα«∩Γ¡«, τΓ« φΓ« ¡«óá∩
¼«ñ¿Σ¿¬áµ¿∩ ó¿απßá "NAME". "tail" - αáßßΓ«∩¡¿Ñ «Γ »Ñαó«⌐ óδ»«½¡∩Ѽ«⌐
¬«¼á¡ñδ ó¿απßá ñ« ¬«¡µá Σá⌐½á.
: virus TYPE suspicious (encrypted,tail).
¥Γ« ß««íΘÑ¡¿Ñ óδñáÑΓ ¼«ñπ½∞ Code Analyzer, Ñß½¿ ó Σá⌐½Ñ/ßÑ¬Γ«αÑ «í¡áαπªÑ¡á
»«ß½Ññ«óáΓѽ∞¡«ßΓ∞ ¿¡ßΓαπ¬µ¿⌐, »«σ«ªá∩ ¡á ó¿απß. "encrypted" - ß««íΘÑ¡¿Ñ «
Γ«¼, τΓ« ó¿απß ∩ó½∩ÑΓß∩ ßá¼«Φ¿ΣαπεΘ¿¼ß∩, "tail" - αáßßΓ«∩¡¿Ñ «Γ »Ñαó«⌐
óδ»«½¡∩Ѽ«⌐ ¬«¼á¡ñδ ó¿απßá ñ« ¬«¡µá Σá⌐½á.
: EXE file but COM extension.
: COM file but EXE extension.
Äí¡áαπªÑ¡« ¡Ñß««ΓóÑΓßΓó¿Ñ Σ«α¼áΓá Σá⌐½á Ñú« αáßΦ¿αÑ¡¿ε.
: pseudobad cluster NUMBER
ìá ñ¿ß¬Ñ «í¡áαπªÑ¡ ¡«α¼á½∞¡δ⌐ ¬½áßΓÑα, »«¼ÑτÑ¡¡δ⌐ ¬á¬ ßí«⌐¡δ⌐. ¥Γ« ß««íΘÑ¡¿Ñ
ñ«ó«½∞¡« τáßΓ« óδñáÑΓß∩ ½¿í« »α¿ αáí«ΓÑ ß« ßí«⌐¡δ¼ ñ¿ß¬«¼, ½¿í« »α¿ ºáαáªÑ¡¿¿
ñ¿ß¬á ó¿απß«¼.
: I/O error.
öá⌐½/ßÑ¬Γ«α ¡áσ«ñ¿Γß∩ ¡á ºáΘ¿ΘÑ¡¡«¼ «Γ ºá»¿ß¿ ñ¿ß¬Ñ ¿½¿ ¿¼ÑÑΓ áΓα¿íπΓ
readonly, á »ÑαѬ½ετáΓѽ∞ "Cure read only" ó ¡áßΓα«⌐¬Ñ ¡Ñ πßΓá¡«ó½Ñ¡.
: trace warning at xxxx:xxxx
Äíαáí«Γτ¿¬ »αÑαδóá¡¿∩ 21h ¿½¿ 13h ß«ñÑαª¿Γ "ó¿απß«»«ñ«í¡πε" ¬«¼á¡ñπ. ùáßΓ«
φΓ« ß««íΘÑ¡¿Ñ ∩ó½∩ÑΓß∩ »Ñαóδ¼ ß¿ú¡á½«¼ « »«∩ó½Ñ¡¿¿ ó¿απßá ó »á¼∩Γ¿
¬«¼»∞εΓÑαá. ì« ¿¡«úñá AVP.EXE αÑáú¿απÑΓ Γᬿ¼ «íαẫ¼ ¡á 󻫽¡Ñ íѺ«í¿ñ¡δÑ
»α«úαá¼¼δ, ¡á»α¿¼Ñα, πΓ¿½¿Γπ RELEASE ¿½¿ ¡á ¡Ñ¬«Γ«αδÑ ñαá⌐óÑαδ ¼δΦ¿.
Åα¿ »«∩ó½Ñ¡¿¿ Γᬫú« ß««íΘÑ¡¿∩ ß½ÑñπÑΓ óδ∩ß¡¿Γ∞, ¬á¬á∩ »α«úαá¼¼á
αáß»«º¡áÑΓß∩ á¡Γ¿ó¿απß«¼ ¬á¬ "«»áß¡á∩". ä½∩ φΓ«ú« ß½ÑñπÑΓ »α«ß¼«ΓαÑΓ∞ ¬áαΓπ
«»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿ »« π¬áºá¡¡δ¼ ó ß««íΘÑ¡¿¿ áñαÑßá¼ ¿ óδ∩ß¡¿Γ∞ ¿¼∩ φΓ«⌐
»α«úαá¼¼δ. äαπú«⌐ ¼ÑΓ«ñ - πñá½Ñ¡¿Ñ óßÑσ ¬«¼á¡ñ ¿º Σá⌐½«ó AUTOEXEC.BAT ¿
CONFIG.SYS, ºáΓѼ ºá»π߬ AVP.EXE ¿ »«ßΓѻѡ¡«Ñ ó«ßßΓá¡«ó½Ñ¡¿Ñ πñá½Ñ¡¡δσ
¬«¼á¡ñ ñ« ¼«¼Ñ¡Γá óδñáτ¿ ß««íΘÑ¡¿∩ « ó¿απßÑ.
éìêîÇìêà! ìѬ«Γ«αδÑ ó¿απßδ í½«¬¿απεΓ Γαáßß¿α«ó¬π »αÑαδóá¡¿⌐: »α¿ »«»δΓ¬Ñ
Γαáßß¿α«óáΓ∞ ¿σ ¬«ñδ «¡¿ "ºáóÑΦ¿óáεΓ" ß¿ßΓѼπ, »ÑαѺáúαπªáεΓ ¬«¼»∞εΓÑα ¿
Γ.». Å«φΓ«¼π, Ñß½¿ »α¿ Γαáßß¿α«ó¬Ñ »αÑαδóá¡¿⌐ ¬«¼»∞εΓÑα ¡áτ¿¡áÑΓ óÑßΓ¿ ßÑí∩
"ßΓαá¡¡«", Γ« ß½ÑñπÑΓ íδΓ∞ «τÑ¡∞ «ßë᫪¡δ¼: ¡Ñ ¿ß¬½ετÑ¡«, τΓ« «»ÑαáΓ¿ó¡á∩
»á¼∩Γ∞ »«αáªÑ¡á ó¿απß«¼.
Buffers warning: Config.sys:N1, really:N2
æ««íΘÑ¡¿∩, óδñáóáѼδÑ »α¿ á¡á½¿ºÑ τ¿ß½á ß¿ßΓѼ¡δσ íπΣÑα«ó. ìÑß««ΓóÑΓßΓó¿Ñ
τ¿ß½á ß¿ßΓѼ¡δσ íπΣÑα«ó π¬áºá¡¡«¼π ó Σá⌐½Ñ CONFIG.SYS ú«ó«α¿Γ « Γ«¼, τΓ«
¬á¬á∩-Γ« »α«úαá¼¼á (󫺼«ª¡«, ó¿απß) »α«¡¿¬½á ó ß¿ßΓѼ¡δÑ «í½áßΓ¿ ¬«¼»∞εΓÑαá.
: packed file. Method XXXX
¥Γ« ß««íΘÑ¡¿Ñ óδñáÑΓß∩ »α¿ «íαáí«Γ¬Ñ π»á¬«óá¡¡«ú« ¿½¿ ¿¼¼π¡¿º¿α«óá¡¡«ú«
Σá⌐½á.
: archive file. Format XXXX
¥Γ« ß««íΘÑ¡¿Ñ óδñáÑΓß∩ »α¿ «íαáí«Γ¬Ñ áασ¿ó¡«ú« Σá⌐½á.
: unknown format.
¥Γ« ß««íΘÑ¡¿Ñ óδñáÑΓß∩ ó ΓÑσ ß½πτá∩σ, Ñß½¿ Extracting/Unpacking Engine ¡Ñ ó
ß«ßΓ«∩¡¿¿ αá߻ᬫóáΓ∞ Σá⌐½. Æá¬á∩ ß¿Γπᵿ∩ óßΓαÑτáÑΓß∩ »α¿ ߬᡿α«óá¡¿¿
Σá⌐½«ó, π»á¬«óá¡¡δσ ¡«ó묨 óÑαß¿∩¼¿ »á¬«óΘ¿¬«ó, ºá»áα«½¿α«óá¡¡δσ ¿½¿
¿ß»«ατÑ¡¡δσ áασ¿ó«ó.
────────────────────────────────────────────────────────────────────
3. Ç¡Γ¿ó¿απß¡á∩ íáºá ñá¡¡δσ (óÑαß¿∩ Pro)
────────────────────────────────────────────────────────────────────
Éáí«Γá ß üä «ß¡«óδóáÑΓß∩ ¡á ¿ß»«½∞º«óá¡¿¿ ¡Ñ߬«½∞¬¿σ ßΓá¡ñáαΓ¡δσ ¼ÑΓ«ñ«ó
«í¡áαπªÑ¡¿∩ ¿ πñá½Ñ¡¿∩ ó¿απßá, τΓ« ñáÑΓ ó«º¼«ª¡«ßΓ∞ »«½∞º«óáΓÑ½ε ¬«¼»∞εΓÑαá
ßἫßΓ«∩Γѽ∞¡« í«α«Γ∞ß∩ ß« ßóѪÑ⌐ ºáαẫ⌐. é Γ«¼ ß½πτáÑ, Ñß½¿ ó¿απß
¿ß»«½∞ºπÑΓ ¡ÑßΓá¡ñáαΓ¡δ⌐ ¼ÑΓ«ñ ó¡ÑñαÑ¡¿∩ ¿½¿ Φ¿Σα«óΘ¿¬, 󫺼«ª¡« ó¬½ετÑ¡¿Ñ
ó ºá»¿ß∞ «íΩÑ¬Γ¡δσ ¬«ñ«ó αáßΦ¿Σα«óΘ¿¬«ó ¿ ½Ñτ¿½«¬ »α¿ »«¼«Θ¿ Σπ¡¬µ¿¿ Link.
Äß¡«ó¡á∩ íáºá ñá¡¡δσ, »«ßΓáó½∩Ѽá∩ ß ¬«¼»½Ñ¬Γ«¼ AVP, íδ½á ß«ºñá¡á ¿
»«»«½¡∩ÑΓß∩ »α¿ »«¼«Θ¿ αÑñá¬Γ«αá íẠ(AVPRO.EXE) ó ß««ΓóÑΓßΓó¿¿ ß
»αáó¿½á¼¿, «»¿ßá¡¡δ¼¿ ¡¿ªÑ.
çỿ߿ íáºδ ñá¡¡δσ
──────────────────
üáºá ñá¡¡δσ (üä) á¡Γ¿ó¿απß¡«ú« ¬«¼»½Ñ¬ßá σαá¡¿Γß∩ ó «ñ¡«¼ Σá⌐½Ñ ¿ ß«ßΓ«¿Γ
¿º ¡áí«αá ºá»¿ßÑ⌐ τÑΓδαÑσ «ß¡«ó¡δσ Γ¿»«ó: MEMORY, SECTOR, JMP, FILE.
çỿ߿ Γ¿»á MEMORY ß«ñÑαªáΓ ¿¡Σ«α¼áµ¿ε « ¼ÑΓ«ñáσ »«¿ß¬á ¿ ñѺá¬Γ¿óᵿ¿
αѺ¿ñÑ¡Γ¡δσ ó¿απß«ó. Ç¡Γ¿ó¿απß¡δ⌐ ߬á¡Ñα »α«óÑα∩ÑΓ ß¿ßΓѼ¡πε »á¼∩Γ∞ ó
ß««ΓóÑΓßΓó¿¿ ß« ß»¿ß¬«¼ ºá»¿ßÑ⌐ Γ¿»á MEMORY ¿, Ñß½¿ ó¿απß «í¡áαπªÑ¡, óδñáÑΓ
ß««ΓóÑΓßΓóπεΘÑÑ ß««íΘÑ¡¿Ñ ¿ ñѺá¬Γ¿ó¿απÑΓ ó¿απß.
çỿ߿ Γ¿»á SECTOR ¿ FILE - ¿¡Σ«α¼áµ¿ε « ß»«ß«íáσ «í¡áαπªÑ¡¿∩ ¿ πñá½Ñ¡¿∩
ó¿απß«ó ó ºáúαπº«τ¡δσ ßÑ¬Γ«αáσ (SECTOR) ¿½¿ Σá⌐½áσ (FILE).
çỿ߿ Γ¿»á JMP óδºδóáεΓß∩ »α¿ «Γ¬αδΓ¿¿ »α«óÑα∩Ѽ«ú« ¡á ó¿απßδ Σá⌐½á ¿
¿ß»«½∞ºπεΓß∩ ñ½∩ óδτ¿ß½Ñ¡¿∩ Γ«τ¬¿ óσ«ñá ó Σá⌐½ (π EXE-Σá⌐½á óδτ¿ß½∩ÑΓß∩
ßΓáαΓ«óδ⌐ áñαÑß ¼«ñπ½∩, π SYS-Σá⌐½á - áñαÑßá »α«úαá¼¼ STRATEGY ¿ INTERRUPT,
ó COM-Σá⌐½Ñ á¡á½¿º¿απεΓß∩ ¬«ñδ Ñú« ¡áτá½á). Windows EXE-Σá⌐½δ »α«óÑα∩εΓß∩
»« ñóπ¼ áñαÑßá¼ - »« Γ«τ¬Ñ óσ«ñá ó DOS-»α«úαá¼¼π ¼«ñπ½∩ ¿ »« «ß¡«ó¡«⌐ Γ«τ¬Ñ
óσ«ñá ó EXE-Σá⌐½ ñ½∩ Windows.
äá¡¡δÑ ºá»¿ß¿ ß«ñÑαªáΓ »«½∩, «ß¡«ó¡δ¼¿ Γ¿»á¼¿ »«½Ñ⌐ ∩ó½∩εΓß∩:
Name/ê¼∩ ó¿απßá
Type/Æ¿» ºá»¿ß¿ (ó¡πΓαÑ¡¡¿⌐ Σ«α¼áΓ Σá⌐½á, MBR ¿½¿ BOOT ßÑ¬Γ«α)
Area/Äí½áßΓ∞ 1: ßΓαá¡¿µá, ß¼ÑΘÑ¡¿Ñ ¿ ñ½¿¡á ¬«ñá ñ½∩ »Ñαó«⌐ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ
Area/Äí½áßΓ∞ 2: ßΓαá¡¿µá, ß¼ÑΘÑ¡¿Ñ ¿ ñ½¿¡á ¬«ñá ñ½∩ óΓ«α«⌐ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ
ô¬áºáΓѽ¿ ¡á ߻ѵ¿á½∞¡δÑ »«ñ»α«úαá¼¼δ
îÑΓ«ñ ½ÑτÑ¡¿∩
éßÑ µ¿Σαδ ó ºá»¿ß∩σ íáºδ ∩ó½∩εΓß∩ ΦÑßΓ¡áñµáΓÑα¿τ¡δ¼¿. çỿ߿ Γ¿»«ó JMP ¿
MEMORY ß«ñÑαªáΓ «úαá¡¿τÑ¡¡δ⌐ ¡áí«α »«½Ñ⌐.
Å«½Ñ "Name"
───────────
èáªñá∩ ºá»¿ß∞ ¡áτ¿¡áÑΓß∩ ß ºá»¿ß¿ Name. ä½á óßÑσ ºá»¿ßÑ⌐ (¬α«¼Ñ JMP, ó ¡¿σ
φΓ« »«½Ñ ¡Ñ ∩ó½∩ÑΓß∩ ßπΘÑßΓóÑ¡¡δ¼) φΓ« »«½Ñ ß«ñÑαª¿Γ ßΓ᫬π - ¿¼∩ ó¿απßá.
ê¼∩ ó¿απßá óδó«ñ¿Γß∩ ¡á φ¬αá¡ »α¿ «í¡áαπªÑ¡¿¿ φΓ«ú« ó¿απßá. Åα¿¼Ñαδ ¿¼Ñ¡:
Atomic
Intruder.1331
Jeru.Sunday.b
髺¼«ª¡« ¿ß»«½∞º«óá¡¿Ñ ½εíδσ ¿¼Ñ¡, ß«ñÑαªáΘ¿σ ß¿¼ó«½δ ASCII, ºá ¿ß¬½ετÑ¡¿Ñ¼
»α«íѽ«ó, Γ«τѬ ¿ º¡á¬á '#'.
Æ«τ¬á "." ¿ß»«½∞ºπÑΓß∩ ¬á¬ αáºúαá¡¿τ¿Γѽ∞ ¼Ñªñπ »«ñ-¿¼Ñ¡á¼¿ ó¿απßá ¿ ñ½∩
π¬áºá¡¿∩ ¡á ¿¼∩ »αÑñδñπΘÑ⌐ ºá»¿ß¿. àß½¿ ¿¼∩ ¡áτ¿¡áÑΓß∩ ß Γ«τ¬¿, φΓ«
«º¡áτáÑΓ, τΓ« ¿¼∩ ΓѬπΘÑ⌐ ºá»¿ß¿ ¡áτ¿¡áÑΓß∩ ß »Ñαó«ú« »«ñ-¿¼Ñ¡¿ »αÑñδñπΘÑ⌐
ºá»¿ß¿. àß½¿ ¿¼∩ ¡áτ¿¡áÑΓß∩ ß ñóπσ (¿½¿ í«½ÑÑ) Γ«τѬ, φΓ« «º¡áτáÑΓ, τΓ« ¿¼∩
ΓѬπΘÑ⌐ ºá»¿ß¿ ¡áτ¿¡áÑΓß∩ ß ñóπσ (¿½¿ í«½ÑÑ) »Ñαóδσ »«ñ-¿¼±¡ »αÑñδñπΘÑ⌐
ºá»¿ß¿.
ç¡á¬ "#" ó ¡áτá½Ñ ºá»¿ß¿ «º¡áτáÑΓ, τΓ« ¿¼∩ ñá¡¡«⌐ ºá»¿ß¿ ß«ó»áñáÑΓ ß ¿¼Ñ¡Ñ¼
»αÑñδñπΘÑ⌐ ºá»¿ß¿. éßÑ º¡¿¬¿ »«ß½Ñ "#" ¿ú¡«α¿απεΓß∩, ßΓα«¬á »«ß½Ñ º¡á¬á "#"
¼«ªÑΓ ¿ß»«½∞º«óáΓ∞ß∩ ¬á¬ ¬«¼¼Ñ¡Γáα¿⌐.
Åα¿¼Ñα:
ê¼∩ ºá»¿ß¿: éδó«ñ ¡á φ¬αá¡:
--------------------------------
Cascade.1701.a Cascade.1701.a
# Cascade.1701.a
..b Cascade.1701.b
.1704.a Cascade.1704.a
..b Cascade.1704.b
#Cascade_Virus Cascade.1704.b
#Cascade_Memory Cascade.1704.b
Å«½Ñ "Type"
───────────
Å«½Ñ Type πßΓá¡áó½¿óáÑΓ Σ«α¼áΓ Σá⌐½á (COM, SYS, EXE ¿½¿ NEW EXE) ó ºá»¿ß∩σ
FILE ¿½¿ Γ¿» ΓÑ¬Γ«αá (BOOT ¿½¿ MBR) ó ºá»¿ß∩σ SECTOR. äá¡¡«Ñ »«½Ñ π¬áºδóáÑΓ
á¡Γ¿ó¿απß¡«¼π ߬á¡Ñαπ ¡á Γ¿» «íΩÑ¬Γ«ó, ¬«Γ«αδÑ »α«óÑα∩εΓß∩ ñá¡¡«⌐ ºá»¿ß∞ε.
àß½¿ ºá»¿ß∞ »«¼ÑτÑ¡á ¬á¬ COM ¿ EXE, Γ« ߬á¡Ñα ¡Ñ ¿ß»«½∞ºπÑΓ ñá¡¡πε ºá»¿ß∞
»α¿ ߬᡿α«óá¡¿¿ SYS-Σá⌐½«ó. àß½¿ ºá»¿ß∞ »«¼ÑτÑ¡á ¬á¬ SYS, ߬á¡Ñα »α«óÑα∩ÑΓ
Γ«½∞¬« ΓÑ Σá⌐½δ, ¬«Γ«αδÑ ¿¼ÑεΓ Σ«α¼áΓ SYS.
æΓαá¡¿µδ
────────
Åα¿ αáí«ΓÑ ß Σá⌐½«¼/ßÑ¬Γ«α«¼ á¡Γ¿ó¿απß αẼÑΘáÑΓ ¬«ñδ Σá⌐½á/ßÑ¬Γ«αá ó
ßΓαá¡¿µáσ (í½«¬áσ »á¼∩Γ¿). êß»«½∞ºπεΓß∩ ß½ÑñπεΘ¿Ñ ßΓαá¡¿µδ:
HEADER - 400h íá⌐Γ«ó, ºáú«½«ó«¬ Σá⌐½á ¿½¿ 200h íá⌐Γ ßÑ¬Γ«αá
PAGE_A - 400h íá⌐Γ«ó, ¬«ñ Γ«τ¬¿ óσ«ñá
PAGE_B - 400h íá⌐Γ«ó, ¬«ñ "ß½ÑñπεΘÑú« óσ«ñá"
PAGE_C - 1000h íá⌐Γ«ó, ¿ß»«½∞ºπÑΓß∩ ó ߻ѵ¿á½∞¡δσ »«ñ»α«úαá¼¼áσ
FILE - ó¿αΓπá½∞¡á∩ ßΓαá¡¿µá, ¿ß»«½∞ºπÑΓß∩ ñ½∩ áñαÑß«óá¡¿∩ ñá¡¡δσ,
¡áσ«ñ∩Θ¿σß∩ ºá »αÑñѽἿ «ßΓá½∞¡δσ ßΓαá¡¿µ.
Åα¿ αáí«ΓÑ ß¬á¡Ñαá ó ßΓαá¡¿µπ HEADER »«¼ÑΘáÑΓß∩ ½¿í« »α«óÑα∩Ѽδ⌐ ßÑ¬Γ«α
(200h íá⌐Γ), ½¿í« 400h íá⌐Γ ¡áτá½á Σá⌐½á. àß½¿ ó ºáú«½«ó¬Ñ Σá⌐½á (ó ¡áτá½Ñ
ßÑ¬Γ«αá) »α¿ßπΓßΓóπÑΓ ¬«¼á¡ñδ »ÑαÑñáτ¿ π»αáó½Ñ¡¿∩, Γ« ó ßΓαá¡¿µπ PAGE_A
»«¼ÑΘáÑΓß∩ 400h íá⌐Γ ¬«ñá Σá⌐½á «Γ Γ«τ¬¿ óσ«ñá (¿½¿ «ßΓáΓ«¬ ßÑ¬Γ«αá) ó
ß««ΓóÑΓßΓó¿¿ ß ºá»¿ß∩¼¿ Γ¿»á JMP. àß½¿ ßΓαá¡¿µá PAGE_A Γá¬ªÑ ß«ñÑনΓ
¬«¼á¡ñπ »ÑαÑñáτ¿ π»αáó½Ñ¡¿∩ ó ßó«Ñ¼ ¡áτá½Ñ, Γ« á¡á½«ú¿τ¡« ºá»«½¡∩ÑΓß∩
ßΓαá¡¿µá PAGE_B, ¬πñá ºá»¿ßδóáÑΓß∩ ¬«ñ "ß½ÑñπεΘÑú«" óσ«ñá.
Åα¿ ß¬á¡¿α«óá¡¿¿ Σá⌐½«ó, ¿¼ÑεΘ¿σ ¡Ñ߬«½∞¬« Γ«τѬ óσ«ñá (SYS-Σá⌐½δ, NEW
EXE-Σá⌐½δ) ߬á¡Ñα »α«óÑα∩ÑΓ ¬áªñπε ¿º Γ«τѬ »σ«ñá »« «»¿ßá¡¡«¼π á½ú«α¿Γ¼π.
Åα¿ ß¬á¡¿α«óá¡¿¿ NEW EXE Σá⌐½«ó ߬á¡Ñα, »«ß½Ñ »α«óÑન DOS ¬«¼»«¡Ñ¡Γδ
Σá⌐½á, αáí«ΓáÑΓ Γ«½∞¬« ß NEW EXE ¬«ñ«¼, »α¿ φΓ«¼ ó ßΓαá¡¿µπ HEADER
»«¼ÑΘáÑΓß∩ ºáú«½«ó«¬ NEW EXE Σá⌐½á.
COM Σá⌐½ EXE/SYS Σá⌐½ NEW EXE Σá⌐½
┌───────┐ ┌───────┐ ┌───────┐
┌─│æΓα. │ EXE/SYS│æΓα. │ EXE │ │
JMP│ │HEADER │ header│HEADER │ header│ │
│ │-------│ │-------│ │-------│
│ │ │ │ │ NE │æΓα. │
│ │ │ │ │ header│HEADER │
└>│-------│ Entry│-------│ │-------│
┌─│PAGE_A │ ┌─│PAGE_A │ │ │
JMP│ │ │ JMP│ │ │ Entry│-------│
│ │-------│ │ │-------│ ┌─│PAGE_A │
│ │ │ │ │ │ │ │ │
└>│-------│ └>│-------│ │ │-------│
│PAGE_B │ │PAGE_B │ └>│PAGE_B │
│ │ │ │ │ │
│-------│ │-------│ │-------│
└───────┘ └───────┘ │ │
└───────┘
ǽú«α¿Γ¼ ºá»«½¡Ñ¡¿∩ ßΓαá¡¿µ «»¿ßá¡ ó »π¡¬ΓÑ "çỿ߿ Γ¿»á JMP".
PAGE_C ¿ß»«½∞ºπÑΓß∩ ߻ѵ¿á½∞¡δ¼¿ »α«µÑñπαἿ decode() ¿ cure() ¬á¬ «í½áßΓ∞
ñ½∩ αáßΦ¿Σα«ó¬¿ ßá¼«Φ¿ΣαπεΘ¿τß∩ ó¿απß«ó ¿ ¬á¬ íπΣÑα τΓÑ¡¿∩/ºá»¿ß¿ »α¿
½ÑτÑ¡¿¿ ó¿απß«ó.
┌──────┐ ┌─────────────────────┐ ┌──────┐
│PAGE_A│───>│»α«µÑñπαá αáßΦ¿Σα«ó¬¿│───>│PAGE_C│
└──────┘ └─────────────────────┘ └──────┘
Σá⌐½
┌───────┐<────┐
│ │ │ ºá»¿ß∞
│-------│ ┌──────┐
│ │ │PAGE_C│
│ │ └──────┘
. . . ^
│-------│ │ τΓÑ¡¿Ñ
│ │─────┘
└───────┘
æΓαá¡¿µá FILE ∩ó½∩ÑΓß∩ ó¿αΓπá½∞¡«⌐ «í½áßΓ∞ε ñá¡¡δσ ¿ ¡Ñ ∩ó½∩ÑΓß∩ í½«¬«¼
αáí«τÑ⌐ »á¼∩Γ¿. ¥½Ñ¼Ñ¡Γδ ßΓαá¡¿µδ FILE ¿¼ÑεΓ »«½«ª¿Γѽ∞¡δÑ ¿ «Γα¿µáΓѽ∞¡δÑ
ß¼ÑΘÑ¡¿∩, ¡π½Ñó«⌐ óñαÑß ßΓαá¡¿µδ FILE ß««ΓóÑΓßΓóπÑΓ Γ«τ¬Ñ óσ«ñá ó Σá⌐½.
äá¡¡á∩ ßΓαá¡¿µá ¿ß»«½∞ºπÑΓß∩ »α¿ ½ÑτÑ¡¿¿∩ Σá⌐½«ó ñ½∩ áñαÑßᵿ¿ ¬ ñá¡¡δ¼,
¡áσ«ñ∩Θ¿¼ß∩ ºá »αÑñѽἿ ßΓαá¡¿µ HEADER, PAGE_A, PAGE_B.
Σá⌐½
┌───────┐
│HEADER │
│-------│
│ │
│ │FILE-0400h
│ │
│-------│FILE+0000
│PAGE_A │
│-------│FILE+0400h
│ │
│ │FILE+0800h
. . .
│-------│
│PAGE_B │
│-------│
│ │
└───────┘
è«¡Γα«½∞¡δÑ ßπ¼¼δ
─────────────────
Åα¿ ñÑΓÑ¬Γ¿α«óá¡¿¿ ó¿απßá ó¼ÑßΓ« «íΘÑ»α¿¡∩Γδσ ó¿απß¡δσ ¼áß«¬ (ß¿ú¡áΓπα)
¿ß»«½∞ºπεΓß∩ ¬«¡Γα«½∞¡δÑ ßπ¼¼δ. 使¡δ ¬«¡Γα«½∞¡δσ ßπ¼¼ αáó¡δ τÑΓδαѼ íá⌐Γá¼
(32 í¿Γá). ǽú«α¿Γ¼ »«ñßτÑΓá ¬«¡Γα«½∞¡δσ ßπ¼¼ ∩ó½∩ÑΓß∩ «ñ¡¿¼ ¿º ßΓá¡ñáαΓ¡δσ
CRC-á½ú«α¿Γ¼«ó.
Ç¡Γ¿ó¿απß¡δ⌐ ߬á¡Ñα »«ñßτ¿ΓδóáÑΓ ¬«¡Γα«½∞¡δÑ ßπ¼¼δ ñ½∩ ¬áªñ«ú« »α«óÑα∩Ѽ«ú«
«íΩѬΓá ¿ ßαáó¡¿óáÑΓ ¿σ ß« ß»¿ß¬«¼ ¬«¡Γα«½∞¡δσ ßπ¼¼, σαá¡∩Θ¿σß∩ ó
á¡Γ¿ó¿απß¡«⌐ íáºÑ ñá¡¡δσ.
é ºá»¿ß∩σ Γ¿»á SECTOR ¿ FILE ¿ß»«½∞ºπεΓß∩ ñóÑ ¬«¡Γα«½∞¡δσ ßπ¼¼δ:
»αÑñóáα¿Γѽ∞¡á∩ (¡á ¡Ñí«½∞Φ«¼ πτáß⪥ ¬«ñá Σá⌐½á) ¿ «¬«¡τáΓѽ∞¡á∩ (¡á
πτáß⪥ ¬«ñá, »« ¬«Γ«α«¼π ¼«ª¡« «ñ¡«º¡áτ¡« ñÑΓÑ¬Γ¿α«óáΓ∞ ó¿απß). çỿ߿
Γ¿»á MEMORY ß«ñÑαªáΓ Γ«½∞¬« «ñ¡π ¬«¡Γα«½∞¡πε ßπ¼¼π.
é ºá»¿ß∩σ FILE ¿ SECTOR αѬ«¼Ñ¡ñπÑΓß∩ ¿ß»«½∞º«óáΓ∞ ß¼ÑΘÑ¡¿Ñ ¿ ñ½¿¡π ¬«ñá
ñ½∩ »Ñαó«⌐ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ ó »αÑñѽáσ:
- ñ½¿¡á ¬«ñá »Ñαó«⌐ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ ¼Ñ¡∞ΦÑ ¿½¿ αáó¡á 10h;
- ß¼ÑΘÑ¡¿Ñ ¬«ñá »Ñαó«⌐ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ αáó¡« ¡π½ε.
é φΓ«¼ ß½πτáÑ »α¿ »α«óÑα¬Ñ ºá»¿ß¿ íπñÑΓ ¿ß»«½∞º«óáΓ∞ß∩ ¬φΦ-á½ú«α¿Γ¼. àß½¿
¡Ñ󫺼«ª¡« óδíαáΓ∞ »«ßΓ«∩¡¡δ⌐ πτáßΓ«¬ ¬«ñá ó ñá¡¡δσ »αÑñѽáσ, ¿ß»«½∞ºπεΓß∩
ñαπú¿Ñ º¡áτÑ¡¿∩ ñ½¿¡δ ¿ ß»ÑΘÑ¡¿∩ ¬«ñá.
àß½¿ ñ½¿¡á »Ñαó«⌐ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ í«½∞ΦÑ ¿½¿ αáó¡á 8 íá⌐Γá¼, Γ« »α¿
ß«ó»áñÑ¡¿¿ »Ñαó«⌐ ßπ¼¼δ ¿ ¡Ñß«ó»áñÑ¡¿¿ óΓ«α«⌐ ߬á¡Ñα óδñáÑΓ »αÑñπ»αѪñÑ¡¿Ñ:
virus NAME warning (ñ½¿¡á "σó«ßΓá")
úñÑ NAME ∩ó½∩ÑΓß∩ ßΓ᫬«⌐ ¿º »«½∩ Name ß««ΓóÑΓßΓóπεΘÑ⌐ ºá»¿ß¿.
Åα«óÑα¬á »« ºá»¿ß¿ »α¿ ߬᡿α«óá¡¿¿ «íΩÑ¬Γ«ó
────────────────────────────────────────────
Åα¿ »α«óÑα¬Ñ «íΩÑ¬Γ«ó ¡á ¡á½¿τ¿Ñ ó ¡¿σ ó¿απßá á¡Γ¿ó¿απß¡δ⌐ ߬á¡Ñα «Γ¬αδóáÑΓ
Σá⌐½δ (ßτ¿ΓδóáÑΓ ßÑ¬Γ«αá), «»αÑñѽ∩ÑΓ ¬«½¿τÑßΓó« Γ«τѬ óσ«ñá ¿ óδτ¿ß½áÑΓ ¿σ
áñαÑßá, ºá»«½¡∩ÑΓ ßΓαá¡¿µδ HEADER, PAGE_A ¿ PAGE_B, ¿ ºáΓѼ óδτ¿ß½∩ÑΓ
»Ñαóπε ¬«¡Γα«½∞¡πε ßπ¼¼π. àß½¿ ¬«¡Γα«½∞¡á∩ ßπ¼¼á ß«ó»á½á, óδºδóáÑΓß∩
߻ѵ¿á½∞¡á∩ »«ñ»α«úαá¼¼á decode() ¿ óδτ¿ß½∩ÑΓß∩ óΓ«αá∩ ¬«¡Γα«½∞¡á∩ ßπ¼¼á.
àß½¿ «íÑ ¬«¡Γα«½∞¡δÑ ßπ¼¼δ ß«ó»áñáεΓ ß« º¡áτÑ¡¿∩¼¿ ßπ¼¼ ó ºá»¿ß¿, ߬á¡Ñα
óδñáÑΓ ß««íΘÑ¡¿Ñ « ºáαáªÑ¡¿¿ ó¿απß«¼. àß½¿ ߬á¡Ñα αáí«ΓáÑΓ ó αѪ¿¼Ñ
½ÑτÑ¡¿∩, Γ« ºáΓѼ óδºδóáÑΓß∩ ¼«ñπ½∞ ½ÑτÑ¡¿∩, ó«ßßΓá¡áó½¿óáεΘ¿⌐ Σá⌐½
(ßÑ¬Γ«α) ó ß««ΓóÑΓßΓó¿¿ ß »«½∩¼¿ ºá»¿ß¿. àß½¿ ó ºá»¿ß¿ »α¿ßπΓßΓóπÑΓ
߻ѵ¿á½∞¡á∩ »«ñ»α«úαá¼¼á cure(), «¡á óδºδóáÑΓß∩ »ÑαÑñ «íαáí«Γ¬«⌐ "½ÑτáΘ¿σ"
»«½Ñ⌐ ºá»¿ß¿.
Åα¿ ß¬á¡¿α«óá¡¿¿ ß¿ßΓѼ¡«⌐ »á¼∩Γ¿ ߬á¡Ñα óδτ¿ß½∩ÑΓ ¬«¡Γα«½∞¡δÑ ßπ¼¼δ
«í½áßΓÑ⌐ »á¼∩Γ¿ ó ß««ΓóÑΓßΓó¿¿ ß« ß»¿ß¬«¼ »α«óÑα∩Ѽδσ áñαÑß«ó (ß¼.
("çỿß∞ Γ¿»á MEMORY"). àß½¿ ñá¡¡á∩ ¬«¡Γα«½∞¡á∩ ßπ¼¼á ß«ó»áñáÑΓ ß«
º¡áτÑ¡¿Ñ¼ ¿º ºá»¿ß¿, ߬á¡Ñα ¬«ααÑ¬Γ¿απÑΓ ºáαáªÑ¡¡πε «í½áßΓ∞ »á¼∩Γ¿ ó
ß««ΓóÑΓßΓó¿¿ ß «ßΓá½∞¡δ¼¿ »«½∩¼¿ ºá»¿ß¿.
Åα¿ óδτ¿ß½Ñ¡¿¿ Γ«τ¬¿ óσ«ñá ߬á¡Ñα óδτ¿ß½∩ÑΓ ¬«¡Γα«½∞¡δÑ ßπ¼¼δ ó ßΓαá¡¿µÑ
HEADER ¿ ßαáó¡¿óáÑΓ ¿º ß« º¡áτÑ¡¿∩¼¿ ¿º ß««ΓóÑΓßΓóπεΘÑ⌐ ºá»¿ß¿ JMP. àß½¿
ßπ¼¼δ ß«ó»á½¿, ߬á¡Ñα »«ñßτ¿ΓδóáÑΓ Γ«τ¬π óσ«ñá ó ß««ΓóÑΓßΓó¿¿ ß π¬áºá¡¡δ¼ ó
ºá»¿ß¿ ¼ÑΓ«ñ«¼.
櫺ñá¡¿Ñ ¡«ó«⌐ ºá»¿ß¿
────────────────────-
Åα¿ ºá¡ÑßÑ¡¿¿ ó üä ¿¡Σ«α¼áµ¿¿ « ¡«ó«¼ ó¿απßÑ ¡Ñ«íσ«ñ¿¼«:
- óßΓáó¿Γ∞ ¡«óπε ºá»¿ß∞ (¬½áó¿Φá INSERT)
- óδíαáΓ∞ Γ¿» ñ«íáó½∩Ѽ«⌐ ºá»¿ß¿ (FILE, SECTOR, JMP, MEMORY, ...)
- óóÑßΓ¿ ¿¼∩ ó¿απßá
- π¬áºáΓ∞ Γ¿» »α«óÑα∩Ѽ«ú« «íΩѬΓá (ñ½∩ ºá»¿ßÑ⌐ FILE ¿ SECTOR)
- πßΓá¡«ó¿Γ∞ º¡áτÑ¡¿∩ áñαÑß«ó ¿ ñ½¿¡ ¬«¡Γα«½∞¡δσ ßπ¼¼
- π¬áºáΓ∞ ¼ÑΓ«ñ πñá½Ñ¡¿∩ ó¿απßá
- »«ñ¬½ετ¿Γ∞ ߻ѵ¿á½∞¡δÑ »«ñ»α«úαá¼¼δ (ó ß½πτáÑ ¡Ñ«íσ«ñ¿¼«ßΓ¿)
- »«ñßτ¿ΓáΓ∞ ¬«¡Γα«½∞¡δÑ ßπ¼¼δ »α¿ »«¼«Θ¿ ¬«¼á¡ñδ SUM, »α¿ φΓ«¼ ¡Ñ«íσ«ñ¿¼«
½¿í« π¬áºáΓ∞ ºáαáªÑ¡¡δ⌐ Σá⌐½, ½¿í« óóÑßΓ¿ ¬«ñ ó¿απßá óαπτ¡πε.
àß½¿ á¡á½¿º¿απÑΓß∩ ó¿απß, ¬«Γ«αδ⌐ ¡Ñ ¿¼ÑÑΓ πτáßΓ¬á, »α¿ú«ñ¡«ú« ñ½∩ »«ñßτÑΓá
¬«¡Γα«½∞¡«⌐ ßπ¼¼δ (»«½¿¼«αΣ¿¬-ó¿απß), ¿ ñ½∩ Ñú« αáßΦ¿Σα«ó¬¿ óδºδóáÑΓß∩
߻ѵ¿á½∞¡á∩ »«ñ»α«úαá¼¼á, Γ« πßΓá¡«ó¿Γ∞ ó ¡«½∞ ß½ÑñπÑΓ ñ½¿¡π »Ñαó«⌐
¬«¡Γα«½∞¡«⌐ ßπ¼¼δ ¿ ÑÑ º¡áτÑ¡¿∩. é φΓ«¼ ß½πτáÑ »Ñαóá∩ ¬«¡Γα«½∞¡á∩ ßπ¼¼á
»«ñßτ¿ΓδóáΓ∞ß∩ ¡Ñ íπñÑΓ, á ñÑΓÑ¬Γ¿α«óá¡¿Ñ ó¿απßá »α«¿ßσ«ñ¿Γ »« º¡áτÑ¡¿ε
óΓ«α«⌐ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ.
Åα¿¼Ñαδ ºá»¿ßÑ⌐ íáºδ ñá¡¡δσ »α¿óÑñÑ¡δ ó Σá⌐½Ñ SAMPLES.ZIP.
3.1. çỿß∞ Γ¿»á FILE
────────────────────────────────────────────────────────────────────
Å«½∩ ºá»¿ß¿
===========
Type Γ¿» ºá»¿ß¿ (COM ¿/¿½¿ EXE ¿/¿½¿ SYS ¿/¿½¿ WIN)
Name ¿¼∩ ó¿απßá
Page_1 ßΓαá¡¿µá ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 1
Offset_1 ß¼ÑΘÑ¡¿Ñ ñ½∩ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 1
Len_1 ñ½¿¡á ¬«ñá ñ½∩ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 1
Sum_1 º¡áτÑ¡¿Ñ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 1
Page_2 ßΓαá¡¿µá ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 2
Offset_2 ß¼ÑΘÑ¡¿Ñ ñ½∩ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 2
Len_2 ñ½¿¡á ¬«ñá ñ½∩ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 2
Sum_2 º¡áτÑ¡¿Ñ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 2
Cure_Method ¼ÑΓ«ñ πñá½Ñ¡¿∩ ó¿απßá
Cure_Page ßΓαá¡¿µá ñ½∩ πñá½Ñ¡¿∩ ó¿απßá
Cure_Data_1 ñá¡¡δÑ ñ½∩ ½ÑτÑ¡¿∩
Cure_Data_2 ñá¡¡δÑ ñ½∩ ½ÑτÑ¡¿∩
Cure_Data_3 ñá¡¡δÑ ñ½∩ ½ÑτÑ¡¿∩
Cure_Data_4 ñá¡¡δÑ ñ½∩ ½ÑτÑ¡¿∩
Cure_Cut ¡á ߬«½∞¬« π¬«αáτ¿óáΓ∞ Σá⌐½ »α¿ ½ÑτÑ¡¿¿
Ä»Ñαᵿ¿
========
Link óδºδóáÑΓ ñ¿á½«ú ó¬½ετÑ¡¿∩ ó ºá»¿ß∞ «íΩÑ¬Γ¡«ú« ¬«ñá
Sum óδºδóáÑΓ ñ¿á½«ú »«ñßτÑΓá ¬«¡Γα«½∞¡δσ ßπ¼¼
ǽú«α¿Γ¼ «íαáí«Γ¬¿ ºá»¿ß¿
=========================
ÅÑαÑñ óδº«ó«¼ »α«µÑñπαδ ΓÑßΓ¿α«óá¡¿∩/πñá½Ñ¡¿∩ ó¿απßá Σá⌐½ »α«σ«ñ¿Γ
«íαáí«Γ¬π »« ºá»¿ß∩¼ Γ¿»á JMP (óδτ¿ß½∩εΓß∩ º¡áτÑ¡¿∩ EP ¿ EP_Next,
ºá»«½¡∩εΓß∩ ßΓαá¡¿µδ HEADER, PAGE_A, PAGE_B). æ«ñÑন¼«Ñ «ßΓá½∞¡δσ ßΓαá¡¿µ
«í¡π½∩ÑΓß∩. é ßΓαá¡¿µÑ, π¬áºá¡¡«⌐ ó »«½Ñ Page_1, ¡áτ¿¡á∩ ß« ß¼ÑΘÑ¡¿∩
Offset_1, ¡á Len_1 íá⌐Γáσ »«ñßτ¿ΓδóáÑΓß∩ ¬«¡Γα«½∞¡á∩ ßπ¼¼á, ¬«Γ«αá∩ ºáΓѼ
ßαáó¡¿óáÑΓß∩ ß« º¡áτÑ¡¿Ñ¼ »«½∩ Sum_1. àß½¿ º¡áτÑ¡¿∩ ß«ó»áñáεΓ, Γ« ó
ßΓαá¡¿µÑ Page_2 »«ñßτ¿ΓδóáÑΓß∩ óΓ«αá∩ ¬«¡Γα«½∞¡á∩ ßπ¼¼á. àß½¿ πßΓá¡«ó½Ñ¡
Σ½áú decode proc, Γ« »ÑαÑñ »«ñßτÑΓ«¼ óΓ«α«⌐ ßπ¼¼δ »α«¿ßσ«ñ¿Γ ó맮ó
߻ѵ¿á½∞¡«⌐ »«ñ»α«úαá¼¼δ (¡á»α¿¼Ñα, ñ½∩ αáßΦ¿Σα«ó¬¿ Γѽá ó¿απßá). Åα¿ φΓ«¼
ó ºá»¿ß∞ ñ«½ªÑ¡ íδΓ∞ ó¬½ετÑ¡ «íΩÑ¬Γ¡δ⌐ ¬«ñ αáßΦ¿Σα«óΘ¿¬á »α¿ »«¼«Θ¿ Σπ¡¬µ¿¿
Link.
àß½¿ ß«ó»á½¿ «íÑ ¬«¡Γα«½∞¡δÑ ßπ¼¼δ, Γ« πñá½Ñ¡¿Ñ ó¿απßá »α«¿ºó«ñ¿Γß∩ ó
ß««ΓóÑΓßΓó¿¿ ß ¼ÑΓ«ñ«¼ Cure_Method. Åα¿ πñá½Ñ¡¿¿ ó¿απßá ó ¬áτÑßΓóÑ
»áαá¼ÑΓα«ó ¿ß»«½∞ºπεΓß∩ º¡áτÑ¡¿∩ »«½Ñ⌐ Cure_Page, Cure_Data_1, Cure_Data_2,
Cure_Data_3, Cure_Data_4, Cure_Cut. é ¬áτÑßΓóÑ »α«óÑα«τ¡«ú« º¡áτÑ¡¿∩
¿ß»«½∞ºπÑΓß∩ »«½Ñ Tail - αáßßΓ«∩¡¿Ñ «Γ ß¼ÑΘÑ¡¿∩ EP ñ« ¬«¡µá Σá⌐½á. Å«½Ñ
Cure_Page ¿ß»«½∞ºπÑΓß∩ ñ½∩ π¬áºá¡¿∩ ßΓαá¡¿µδ, ¿º ¬«Γ«α«⌐ »« ß¼ÑΘÑ¡¿∩¼
Cure_Data_x óδñѽ∩εΓß∩ ñá¡¡δÑ ñ½∩ πñá½Ñ¡¿∩ ó¿απßá. àß½¿ ó ¬áτÑßΓóÑ ßΓαá¡¿µδ
π¬áºδóáÑΓß∩ FILE, Γ« ñá¡¡δÑ ñ½∩ πñá½Ñ¡¿∩ óδñѽ∩εΓß∩ ¿º Σá⌐½á »« ß¼ÑΘÑ¡¿ε
EP+Cure_Data_x. é ßó∩º¿ ß φΓ¿¼ »«½∩ Cure_Data_x ∩ó½∩εΓß∩ º¡á¬«ó묨 (Γ.Ñ.
¼«úπΓ ¿¼ÑΓ∞ ¿ «Γα¿µáΓѽ∞¡δÑ º¡áτÑ¡¿∩).
àß½¿ ñ½∩ ½ÑτÑ¡¿∩ Σá⌐½á ¿ß»«½∞ºπÑΓß∩ ߻ѵ¿á½∞¡á∩ »«ñ»α«úαá¼¼á cure(), ¿ «¡á
ó«ºóαáΓ¿½á ¬«ñ R_PRECURE, Γ« ñá½∞¡Ñ⌐ΦÑÑ ½ÑτÑ¡¿Ñ »α«¿ßσ«ñ¿Γ »« π¬áºá¡¡«¼π ó
ºá»¿ß¿ ßΓá¡ñáαΓ¡«¼π ¼ÑΓ«ñπ. äá¡¡δ⌐ »α¿Ñ¼ ¿ß»«½∞ºπÑΓß∩ ó ΓÑσ ß½πτá∩σ, ¬«úñá
»ÑαÑñ óδº«ó«¼ «ñ¡«ú« ¿º ßΓá¡ñáαΓ¡δσ ß»«ß«í«ó ½ÑτÑ¡¿∩ ¡Ñ«íσ«ñ¿¼« ¿º¼Ñ¡¿Γ∞
(«Γ¬«ααÑ¬Γ¿α«óáΓ∞) ¡Ñ¬«Γ«αδÑ ñá¡¡δÑ, ¡á»α¿¼Ñα, αáßΦ¿Σα«óáΓ∞ »Ñαó«¡áτá½∞¡«Ñ
ß«ñÑন¼«Ñ ºáú«½«ó¬á Σá⌐½á.
îÑΓ«ñδ πñá½Ñ¡¿∩ ó¿απßá
======================
MOVE ¿ LEHIGH
-------------
é«ßßΓá¡«ó½Ñ¡¿Ñ ¡áτá½á Σá⌐½á. êß»«½∞ºπÑΓß∩ »α¿ ºáαáªÑ¡¿¿ ó¿απßἿ, ¬«Γ«αδÑ
ñ«»¿ßδóáεΓß∩ ¬ ¬«¡µπ Σá⌐½á ¿ ¼«ñ¿Σ¿µ¿απεΓ Ñú« ¡áτὫ. ôñá½Ñ¡¿Ñ ó¿απßá
»α«¿ßσ«ñ¿Γ ß½ÑñπεΘ¿¼ «íαẫ¼: ¡áτ¿¡á∩ ß« ß¼ÑΘÑ¡¿∩ Cure_Data_1 ¿º ßΓαá¡¿µδ,
«»¿ßá¡¡«⌐ ó »«½Ñ Cure_Page (¿½¿ «Γ Γ«τ¬¿ óσ«ñá ó Σá⌐½, Ñß½¿ ßΓαá¡¿µá -
FILE), Cure_Data_2 íá⌐Γ »ÑαѼÑΘáÑΓß∩ »« ß¼ÑΘÑ¡¿ε Cure_Data_3 «Γ ¡áτá½á
Σá⌐½á («íδτ¡« »«½Ñ Cure_Data_3 αáó¡« 0). Å«½Ñ Cure_Data_4 ¡Ñ ¿ß»«½∞ºπÑΓß∩.
Å«ß½Ñ φΓ«ú«, Ñß½¿ αѪ¿¼ ½ÑτÑ¡¿∩ LEH, ¿ ¿¼∩ Σá⌐½á - COMMAND.*, Γ« Σá⌐½ ß«
ß¼ÑΘÑ¡¿∩ Cure_Cut óδΦÑ Γ«τ¬¿ óσ«ñá (EP-Cure_Cut) ñ« ¬«¡µá Σá⌐½á ºá»«½¡∩ÑΓß∩
¡π½Ñó묨 íá⌐ΓἿ. é »α«Γ¿ó¡«¼ ß½πτáÑ Σá⌐½ π¬«αáτ¿óáÑΓß∩ »« ß¼ÑΘÑ¡¿ε
Cure_Cut óδΦÑ Γ«τ¬¿ óσ«ñá (EP-Cure_Cut).
JERUSALEM
---------
ôñá½Ñ¡¿Ñ ó¿απßá, ó¡Ññα∩εΘÑú«ß∩ ó ¡áτὫ Σá⌐½«ó. öá⌐½ ßñó¿úáÑΓß∩ ó ¡áτὫ ¡á
Cure_Data_1 íá⌐Γ, »α¿ φΓ«¼ Ñú« αẼÑα π¼Ñ¡∞ΦáÑΓß∩ ¡á Cure_Data_1 íá⌐Γ.
Å«ß½Ñ φΓ«ú« «Γ Σá⌐½á «ΓßѬáεΓß∩ Cure_Cut íá⌐Γ. Å«½∩ Cure_Page, Cure_Data_2,
Cure_Data_3 ¿ Cure_Data_4 ¡Ñ ¿ß»«½∞ºπεΓß∩.
START
-----
ôñá½Ñ¡¿Ñ ó¿απßá, ó¡Ññα∩εΘÑú«ß∩ ó ¡áτὫ Σá⌐½«ó. ÅÑαÑñ πñá½Ñ¡¿Ñ¼ ó¿απßá Σá⌐½
π¬«αáτ¿óáÑΓß∩ ¡á Cure_Cut íá⌐Γ. çáΓѼ τáßΓ∞ ¬«ñ«ó Σá⌐½á »ÑαѼÑΘáÑΓß∩ ¿º Ñú«
¬«¡µá ó ¡áτὫ. àß½¿ ñ½¿¡á Σá⌐½á ¼Ñ¡∞ΦÑ, τѼ Cure_Data_1*2, Γ« »ÑαѼÑΘáÑΓß∩
File_Length-Cure_Data_1 íá⌐Γ (File_Length - ñ½¿¡á Σá⌐½á »«ß½Ñ π¼Ñ¡∞ΦÑ¡¿∩ ¡á
Cure_Cut íá⌐Γ). ê¡áτÑ »ÑαѼÑΘáÑΓß∩ Cure_Data_1 íá⌐Γ. Å«ß½Ñ φΓ«ú« Σá⌐½
π¬«αáτ¿óáÑΓß∩ ¡á Cure_Data_1 íá⌐Γ.
Å«½∩ Cure_Page, Cure_Data_2, Cure_Data_3 ¿ Cure_Data_4 ó ¼ÑΓ«ñÑ START ¡Ñ
¿ß»«½∞ºπεΓß∩.
EXE_CISS, EXE_CISS_10, EXE_CIS, EXE_CIS_10, EXE_CI, EXE_CI_10
-------------------------------------------------------------
îÑΓ«ñδ ó«ßßΓá¡«ó½Ñ¡¿∩ »«½Ñ⌐ αÑú¿ßΓα«ó ºáú«½«ó¬á EXE-Σá⌐½á:
EXE_CISS - ó«ßßΓá¡«ó½Ñ¡¿Ñ º¡áτÑ¡¿⌐ óßÑσ αÑú¿ßΓα«ó (CS,IP,SS,SP);
EXE_CIS - ó«ßßΓá¡«ó½Ñ¡¿Ñ º¡áτÑ¡¿⌐ αÑú¿ßΓα«ó CS,IP ¿ SS;
EXE_CI - ó«ßßΓá¡«ó½Ñ¡¿Ñ º¡áτÑ¡¿⌐ αÑú¿ßΓα«ó CS ¿ IP;
EXE_CISS_10, EXE_CIS_10 ¿ EXE_CI_10 »«½¡«ßΓ∞ε »«óΓ«α∩εΓ »α¿óÑñÑ¡¡δÑ óδΦÑ,
ºá ¿ß¬½ετÑ¡¿Ñ¼ Γ«ú«, τΓ« ¿º º¡áτÑ¡¿⌐ ßÑú¼Ñ¡Γ¡δσ αÑú¿ßΓα«ó (CS ¿ SS)
óδτ¿ΓáÑΓß∩ 10h.
àß½¿ π¬áºá¡á ßΓαá¡¿µá FILE, Γ« αÑú¿ßΓαδ íπñπΓ óδí¿αáΓ∞ß∩ ¬á¬ ß½«óá,
αáß»«½«ªÑ¡¡δÑ ß« ß¼ÑΘÑ¡¿Ñ¼ Cure_Data_x «Γ Γ«τ¬¿ óσ«ñá (º¡áτÑ¡¿∩ Cure_Data_x
¼«úπΓ ¿¼ÑΓ∞ ¿ «Γα¿µáΓѽ∞¡δÑ º¡áτÑ¡¿∩):
CS - word ptr File[EP+Cure_Data_1]
IP - word ptr File[EP+Cure_Data_2]
SS - word ptr File[EP+Cure_Data_3]
SP - word ptr File[EP+Cure_Data_4]
é »α«Γ¿ó¡«¼ ß½πτáÑ αÑú¿ßΓαδ óδí¿αáεΓß∩ ¬á¬ ß½«óá ß« ß¼ÑΘÑ¡¿Ñ¼ Cure_Data_x ó
π¬áºá¡¡«⌐ ßΓαá¡¿µÑ (º¡áτÑ¡¿∩ Cure_Data_x - Γ«½∞¬« »«½«ª¿Γѽ∞¡δÑ):
CS - word ptr PAGE[Cure_Data_1]
IP - word ptr PAGE[Cure_Data_2]
SS - word ptr PAGE[Cure_Data_3]
SP - word ptr PAGE[Cure_Data_4]
Å«ß½Ñ ó«ßßΓá¡«ó½Ñ¡¿∩ »«½Ñ⌐ αÑú¿ßΓα«ó ó ºáú«½«ó¬Ñ EXE-Σá⌐½á, ñ½¿¡á Σá⌐½á
π¬«αáτ¿óáÑΓß∩ »« ß¼ÑΘÑ¡¿ε Cure_Cut íá⌐Γ «Γ Γ«τ¬¿ óσ«ñá (EP-Cure_Cut), á
ºáΓѼ »α«ó«ñ¿Γß∩ ß««ΓóÑΓßΓóπεΘá∩ ¡«ó«⌐ ñ½¿¡Ñ Σá⌐½á ¼«ñ¿Σ¿¬áµ¿∩ »«½Ñ⌐ "使¡á
î«ñπ½∩" ó ºáú«½«ó¬Ñ EXE-Σá⌐½á.
SYS_SI ¿ SYS_I
--------------
îÑΓ«ñδ ó«ßßΓá¡«ó½Ñ¡¿∩ ºáú«½«ó¬á SYS-Σá⌐½á. Åαá¬Γ¿τÑ߬¿ á¡á½«ú¿τ¡δ ¼ÑΓ«ñá¼
ó«ßßΓá¡«ó½Ñ¡¿∩ »«½Ñ⌐ ºáú«½«ó¬á EXE-Σá⌐½á, ºá ΓѼ ¿ß¬½ετÑ¡¿Ñ¼, τΓ«
ó«ßßΓá¡áó½¿óáεΓß∩ ½¿í« »«½∩ áñαÑß«ó »α«úαá¼¼ Strategy ¿ Interrupt (¼ÑΓ«ñ
SYS_SI), ½¿í« Γ«½∞¬« »«½Ñ Interrupt (¼ÑΓ«ñ SYS_I).
DELETE
------
ô¡¿τΓ«ªÑ¡¿Ñ ºáαáªÑ¡¡«ú« Σá⌐½á.
FAIL
----
¥Γ«Γ ¼ÑΓ«ñ óδñáÑΓ ß««íΘÑ¡¿Ñ "virus NAME cure failed". êß»«½∞ºπÑΓß∩ ¬á¬
óαѼѡ¡δ⌐ ñ½∩ ΓÑσ ó¿απß«ó, ¼ÑΓ«ñ ¡áñѪ¡«ú« πñá½Ñ¡¿∩ ¬«Γ«αδσ ¡áσ«ñ¿Γß∩ ó
ßΓáñ¿¿ αáºαáí«Γ¬¿.
SPECIAL
-------
é í«½ÑÑ ß½«ª¡δσ ß½πτá∩σ («ß«íÑ¡¡«, Ñß½¿ ó¿απß ºáΦ¿Σα«óá¡ ¿½¿ óδ»«½¡Ñ¡ »«
ΓÑσ¡«½«ú¿¿ "»«½¿¼«αΣ¿¬") »α«µÑñπαá ó«ßßΓá¡«ó½Ñ¡¿∩ Σá⌐½á ¼«ªÑΓ ßπΘÑßΓóÑ¡¡«
πß½«ª¡¿Γ∞ß∩. é φΓ«¼ ß½πτáÑ ßΓá¡ñáαΓ¡δÑ ¼ÑΓ«ñδ ¡Ñ »«ñσ«ñ∩Γ, ¿ óδºδóáÑΓß∩
߻ѵ¿á½∞¡á∩ »«ñ»α«úαá¼¼á πñá½Ñ¡¿∩ ó¿απßá. Åα¿ φΓ«¼ ó ºá»¿ß∞ ñ«½ªÑ¡ íδΓ∞
ó¬½ετÑ¡ «íΩÑ¬Γ¡δ⌐ ¬«ñ ½Ñτ¿½¬¿ »α¿ »«¼«Θ¿ Σπ¡¬µ¿¿ Link.
Åα¿¼Ñα ¿ß»«½∞º«óá¡¿∩
====================
COM-Σá⌐½ »«αáªÑ¡ ó¿απß«¼ "Tiny". Åα¿ ºáαáªÑ¡¿¿ Σá⌐½á ó¿απß ñ«»¿ßδóáÑΓ ¬
¡Ñ¼π 4 íá⌐Γá ßΓáα«ú« ¡áτá½á, ºáΓѼ 140 íá⌐Γ ßó«Ñú« ΓÑ½á ¿ ¼«ñ¿Σ¿µ¿απÑΓ
»ÑαóδÑ 4 íá⌐Γá ¡áτá½á Σá⌐½á (ºá»¿ßδóáÑΓ ó ¡¿σ ¬«¼á¡ñπ »ÑαÑσ«ñá ¡á Γѽ«
ó¿απßá):
4D DEC PB
E9 xx xx JMP NEAR Loc_Virus
Æᬠ¬á¬ ¼ÑΓ«ñ óσ«ñá ó Σá⌐½ - ¡ÑßΓá¡ñáαΓ¡δ⌐, Γ« ó íáºπ ñá¡¡δσ ß½ÑñπÑΓ
ºá¡ÑßΓ¿ ¡«óπε ºá»¿ß∞ Γ¿»á JMP, á¡á½¿º¿απεΘπε ¡«óδ⌐ ¼ÑΓ«ñ óσ«ñá:
Name Tiny
Len_1 02
Sum_1 xxxxxxxx <<< ºá»«½¡∩ÑΓß∩ »« »α«Γ«Γ¿»π ¬«¼á¡ñ«⌐ Sum
Offset_2 00
Len_2 00
Sum_2 xxxxxxxx <<< ºá»«½¡∩ÑΓß∩ »« »α«Γ«Γ¿»π ¬«¼á¡ñ«⌐ Sum
Jmp_Method OFFSET
Jmp_Data 02
çáΓѼ ºá»«½¡∩ÑΓß∩ »«½∩ ºá»¿ß¿ Γ¿»á COM:
Type COM
Name Tiny
Page_1 PAGE_A
Offset_1 00
Len_1 08
Sum_1 xxxxxxxx <<< ºá»«½¡∩ÑΓß∩ »« »α«Γ«Γ¿»π ¬«¼á¡ñ«⌐ Sum
Program_Flag NO
Page_2 PAGE_A
Offset_2 00
Len_2 40
Sum_2 xxxxxxxx <<< ºá»«½¡∩ÑΓß∩ »« »α«Γ«Γ¿»π ¬«¼á¡ñ«⌐ Sum
Cure_Method MOVE
Cure_Page FILE
Cure_Data_1 -04
Cure_Data_2 04
Cure_Data_3 00
Cure_Data_4 00
Cure_Cut -04
3.2. çỿß∞ Γ¿»á JMP
────────────────────────────────────────────────────────────────────
æΓαπ¬Γπαá ºá»¿ß¿
================
Name ¿¼∩ ß»«ß«íá (¡Ñ ¿ß»«½∞ºπÑΓß∩)
Len_1 ñ½¿¡á ¬«ñá ñ½∩ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 1
Sum_1 º¡áτÑ¡¿Ñ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 1
Offset_2 ß¼ÑΘÑ¡¿Ñ ñ½∩ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 2
Len_2 ñ½¿¡á ¬«ñá ñ½∩ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 2
Sum_2 º¡áτÑ¡¿Ñ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 2
Jmp_Method ¿¼∩ ¼ÑΓ«ñá
Jmp_Data ñá¡¡δÑ ñ½∩ ¼ÑΓ«ñá
Ä»Ñαᵿ¿
========
Link óδºδóáÑΓ ñ¿á½«ú ó¬½ετÑ¡¿∩ ó ºá»¿ß∞ «íΩÑ¬Γ¡«ú« ¬«ñá
Sum óδºδóáÑΓ ñ¿á½«ú »«ñßτÑΓá ¬«¡Γα«½∞¡δσ ßπ¼¼
ǽú«α¿Γ¼ «íαáí«Γ¬¿ ºá»¿ß¿
=========================
çỿ߿ Γ¿»á JMP ¿ß»«½∞ºπεΓß∩ »α¿ »«ñú«Γ«ó¬Ñ Σá⌐½«ó ¬ ΓÑßΓ¿α«óá¡¿ε ¿½¿
½ÑτÑ¡¿ε. Å« ºá»¿ß∩¼ φΓ«ú« Γ¿»á »α«¿ßσ«ñ¿Γ óδτ¿ß½Ñ¡¿Ñ áñαÑßá óσ«ñá ó Γѽ«
ó¿απßá (Γ«τ¬π óσ«ñá) ¿ ºá»«½¡Ñ¡¿Ñ ßΓαá¡¿µ PAGE_A ¿ PAGE_B.
Å«ß½Ñ «Γ¬αδΓ¿∩ ΓÑßΓ¿απѼ«ú« Σá⌐½á 400h íá⌐Γ Ñú« ¡áτá½á ßτ¿ΓδóáεΓß∩ ó
ßΓαá¡¿µδ HEADER ¿ PAGE_A. æ«ñÑন¼«Ñ «ßΓá½∞¡δσ ßΓαá¡¿µ «í¡π½∩ÑΓß∩. çáΓѼ
á¡Γ¿ó¿απß óδτ¿ß½∩ÑΓ Γ«τ¬π óσ«ñá (Entry Point - EP) ó Σá⌐½. ä½∩ φΓ«ú« ñ½∩
»Ñαóδσ Len_1 íá⌐Γ ßΓαá¡¿µδ HEADER óδτ¿ß½∩ÑΓß∩ ¬«¡Γα«½∞¡á∩ ßπ¼¼á. àß½¿
«¡á ß«ó»áñáÑΓ ß Sum_1, Γ« »«ñßτ¿ΓδóáÑΓß∩ ¬«¡Γα«½∞¡á∩ ßπ¼¼á Len_2 íá⌐Γ
ßΓαá¡¿µδ HEADER, ¡áτ¿¡á∩ ß« ß¼ÑΘÑ¡¿∩ Offset_2. àß½¿ »«½πτÑ¡¡á∩
¬«¡Γα«½∞¡á∩ ßπ¼¼á ß«ó»áñáÑΓ ß Sum_2, Γ« ó ß««ΓóÑΓßΓó¿¿ ß ¼ÑΓ«ñ«¼
Jmp_Method ¿ ñá¡¡δ¼¿ Jmp_Data »α«¿ßσ«ñ¿Γ óδτ¿ß½Ñ¡¿Ñ áñαÑßá EP. çáΓѼ
400h íá⌐Γ Σá⌐½á, ¡áτ¿¡á∩ ß« ß¼ÑΘÑ¡¿∩ EP, ßτ¿ΓδóáεΓß∩ ó ßΓαá¡¿µπ PAGE_A.
Ä»¿ßá¡¡á∩ »α«µÑñπαá ºáΓѼ óδ»«½¡∩ÑΓß∩ ÑΘÑ αẠñ½∩ ßΓαá¡¿µδ PAGE_A (ó¼ÑßΓ«
HEADER): »α«¿ßσ«ñ¿Γ óδτ¿ß½Ñ¡¿Ñ áñαÑßá ß½ÑñπεΘÑú« óσ«ñá EP_Next ¿
ºá»«½¡Ñ¡¿Ñ ßΓαá¡¿µδ PAGE_B (ó¼ÑßΓ« EP ¿ PAGE_A).
îÑΓ«ñδ óδτ¿ß½Ñ¡¿∩ EP ¿ EP_Next
==============================
OFFSET
------
êß»«½∞ºπÑΓß∩ »α¿ «íαáí«Γ¬Ñ ¬«¼á¡ñ »ÑαÑσ«ñá Γ¿»á:
xxxx:0100 E9 xx xx JMP NEAR Loc_Virus
.... ....
xxxx:0100 E8 xx xx CALL NEAR Loc_Virus
.... ....
¿½¿ ¿σ ¬«¼í¿¡áµ¿⌐ ß ñαπú¿¼¿ ¬«¼á¡ñἿ:
xxxx:0100 90 NOP
xxxx:0101 E9 xx xx JMP NEAR Loc_Virus
.... ....
ç¡áτÑ¡¿Ñ EP (¿½¿ EP_Next ß««ΓóÑΓßΓóÑ¡¡«) óδτ¿ß½∩ÑΓß∩ ¬á¬ áñαÑß ¬«¼á¡ñδ,
¡á ¬«Γ«απε »ÑαÑñáÑΓß∩ π»αáó½Ñ¡¿Ñ ¿¡ßΓαπ¬µ¿Ñ⌐ JMP NEAR ¿½¿ CALL NEAR.
EP = word ptr Header[Jmp_Data] + Jmp_Data + 2.
ADDRESS
-------
êß»«½∞ºπÑΓß∩ »α¿ «íαáí«Γ¬Ñ ¬«¼á¡ñ »ÑαÑσ«ñá »« ñá¡¡δ¼ Γ¿»á:
xxxx:0100 68 xx xx PUSH OFFSET Vir_Loc
xxxx:0103 C3 RET
.... ....
xxxx:0100 B8 xx xx MOV AX, OFFSET Vir_Loc
xxxx:0103 FF D0 CALL AX
.... ....
ç¡áτÑ¡¿Ñ EP (¿½¿ EP_Next) óδτ¿ß½∩ÑΓß∩ ¬á¬ áñαÑß ¬«¼á¡ñδ, ¡á ¬«Γ«απε
»ÑαÑñáÑΓß∩ π»αáó½Ñ¡¿Ñ ¿¡ßΓαπ¬µ¿Ñ⌐ »ÑαÑñáτ¿ π»αáó½Ñ¡¿∩.
EP = word ptr Header[Jmp_Data] - 0100h.
DATA
----
êß»«½∞ºπÑΓß∩ »α¿ «íαáí«Γ¬Ñ ¬«¼á¡ñ »ÑαÑσ«ñá »« ñá¡¡δ¼:
xxxx:0100 FF 26 04 01 JMP WORD PTR [0104]
xxxx:0104 xx xx DW Vir_Offset
.... ....
EP = word ptr File [Jmp_Data] - 0x100.
FAIL
----
¥Γ«Γ ¼ÑΓ«ñ óδñáÑΓ ß««íΘÑ¡¿Ñ :virus NAME cure failed.
êß»«½∞ºπÑΓß∩ ¬á¬ óαѼѡ¡δ⌐ ñ½∩ ΓÑσ ó¿απß«ó, ¼ÑΓ«ñ ¡áñѪ¡«ú« πñá½Ñ¡¿∩
¬«Γ«αδσ ¡áσ«ñ¿Γß∩ ó ßΓáñ¿¿ αáºαáí«Γ¬¿.
SPECIAL
-------
êß»«½∞ºπÑΓß∩ »α¿ á¡á½¿ºÑ ߻ѵ¿á½∞¡δσ ß½πτáÑó »ÑαÑσ«ñá ¡á Γ«τ¬π óσ«ñá ó
Σá⌐½. è ߻ѵ¿á½∞¡δ¼ «Γ¡«ß∩Γß∩ Γá¬ªÑ ¼ÑΓ«ñδ «íαáí«Γ¬¿ ºáú«½«ó¬«ó EXE- ¿
SYS-Σá⌐½«ó, ¬«¼á¡ñ í½¿º¬«ú« »ÑαÑσ«ñá (JMP SHORT). Åα¿ φΓ«¼ ó ºá»¿ß∞ ñ«½ªÑ¡
íδΓ∞ ó¬½ετÑ¡ «íΩÑ¬Γ¡δ⌐ ¬«ñ «íαáí«Γτ¿¬á »α¿ »«¼«Θ¿ Σπ¡¬µ¿¿ Link.
Åα¿¼Ñα ¿ß»«½∞º«óá¡¿∩
====================
è«ñδ ¿¡Σ¿µ¿α«óá¡¡«ú« Σá⌐½á:
0000 90 NOP
0001 90 NOP
0002 E9 xx xx JMP Virus
çừ½¡Ñ¡¿Ñ Σ«α¼δ:
Name nop_nop_jmp
Len_1 0003
Sum_1 xxxxxxxx <<< ºá»«½¡∩ÑΓß∩ »« »α«Γ«Γ¿»π ¬«¼á¡ñ«⌐ Sum
Offset_2 0000
Len_2 0003
Sum_2 xxxxxxxx <<< ºá»«½¡∩ÑΓß∩ »« »α«Γ«Γ¿»π ¬«¼á¡ñ«⌐ Sum
Jmp_Method OFFSET
Jmp_Data 0003
3.3. çỿß∞ Γ¿»á MEMORY
────────────────────────────────────────────────────────────────────
æΓαπ¬Γπαá ºá»¿ß¿
================
Name ¿¼∩ ó¿απßá
Method ¼ÑΓ«ñ »«¿ß¬á ó¿απßá ó »á¼∩Γ¿
Segment º¡áτÑ¡¿Ñ ßÑú¼Ñ¡Γá Segm (¼ÑΓ«ñ ADDRESS)
Offset_1 º¡áτÑ¡¿Ñ ß¼ÑΘÑ¡¿∩ ñ½∩ »α«óÑન
Control_Byte ¬«¡Γα«½∞¡δ⌐ íá⌐Γ
Len_1 ñ½¿¡á ¬«ñá ñ½∩ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ
Sum º¡áτÑ¡¿Ñ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ
Offset_2 ß¼ÑΘÑ¡¿Ñ ñ½∩ ºá¼Ñ¡δ ¬«ñá
Len_2 ñ½¿¡á ºá¼Ñ¡∩Ѽ«ú« ¬«ñá (¡Ñ í«½ÑÑ 5)
Replace_Bytes íá⌐Γδ ¡«ó«ú« ¬«ñá
Ä»Ñαᵿ¿
========
Link óδºδóáÑΓ ñ¿á½«ú ó¬½ετÑ¡¿∩ ó ºá»¿ß∞ «íΩÑ¬Γ¡«ú« ¬«ñá
Sum óδºδóáÑΓ ñ¿á½«ú »«ñßτÑΓá ¬«¡Γα«½∞¡δσ ßπ¼¼
ǽú«α¿Γ¼ «íαáí«Γ¬¿ ºá»¿ß¿
=========================
é ß««ΓóÑΓßΓó¿¿ ß ¼ÑΓ«ñ«¼ Method »α«¿ºó«ñ¿Γß∩ ߬᡿α«óá¡¿Ñ ¡Ñ¬«Γ«α«ú« ¡áí«αá
áñαÑß«ó Segm:Offs. ä½∩ ¬áªñ«ú« áñαÑßá »α«¿ßσ«ñ¿Γ ßαáó¡Ñ¡¿Ñ º¡áτÑ¡¿∩ íá⌐Γá
«»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿ »« áñαÑßπ Segm:Offs+Offset_1 ß« º¡áτÑ¡¿Ñ¼ »«½∩
Control_Byte. àß½¿ º¡áτÑ¡¿∩ ß«ó»áñáεΓ, Γ«, ¡áτ¿¡á∩ ß áñαÑßá
Segm:Offs+Offset_1, »«ñßτ¿ΓδóáÑΓß∩ ¬«¡Γα«½∞¡á∩ ßπ¼¼á ¡á Len_1 íá⌐Γáσ
«»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿. àß½¿ º¡áτÑ¡¿Ñ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ ß«ó»áñáÑΓ ß« º¡áτÑ¡¿Ñ¼
»«½∩ Sum, Γ« óδñáÑΓß∩ ß««íΘÑ¡¿Ñ «í «í¡áαπªÑ¡¿¿ αѺ¿ñÑ¡Γ¡«⌐ τáßΓ¿ ó¿απßá »«
áñαÑßπ Segm:Offs, ºáΓѼ, ¡áτ¿¡á∩ ß áñαÑßá Segm:Offs+Offset_2, »α«¿ßσ«ñ¿Γ
ºá¼Ñ¡á Len_2 íá⌐Γ «»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿ ¡á íá⌐Γδ Replace_Bytes.
îÑΓ«ñδ »«¿ß¬á
=============
ADDRESS
-------
Å«¿ß¬ »« Σ¿¬ß¿α«óá¡¡δ¼ áñαÑßá¼. é φΓ«¼ ß½πτáÑ Segm »α¿¡¿¼áÑΓ «ñ¡« ßΓα«ú«
«»αÑñѽѡ¡«Ñ º¡áτÑ¡¿Ñ, Offs - º¡áτÑ¡¿Ñ 0.
CUT
---
Å«¿ß¬ ó «í½áßΓ¿ »á¼∩Γ¿, "«ΓαѺᡡ«⌐" «Γ »á¼∩Γ¿ DOS. Segm »α¿¡¿¼áÑΓ º¡áτÑ¡¿∩
ßÑú¼Ñ¡Γ¡δσ áñαÑß«ó óßÑσ »áαáúαáΣ«ó »á¼∩Γ¿ «Γ ¬«¡µá »á¼∩Γ¿ DOS ñ« ¡áτá½á
ó¿ñÑ«»á¼∩Γ¿, Offs - º¡áτÑ¡¿Ñ 0.
MCB
---
Å«¿ß¬ ó í½«¬áσ »á¼∩Γ¿. Åα¿ ¿ß»«½∞º«óá¡¿¿ φΓ«ú« ¼ÑΓ«ñá Segm »α¿¡¿¼áÑΓ
º¡áτÑ¡¿∩ ßÑú¼Ñ¡Γ¡δσ áñαÑß«ó óßÑσ MCB-í½«¬«ó »á¼∩Γ¿ (¡áτ¿¡á∩ ß ßἫú«
»Ñαó«ú«), Offs - º¡áτÑ¡¿Ñ 0. æ½ÑñπÑΓ «íαáΘáΓ∞ «ß«í«Ñ ó¡¿¼á¡¿Ñ ¡á Γ«, τΓ«
Segm »α¿¡¿¼áÑΓ º¡áτÑ¡¿Ñ áñαÑßá ßἫú« í½«¬á »á¼∩Γ¿, á ¡Ñ ºáú«½«ó¬á í½«¬á.
TRACE
-----
Æαáßß¿α«ó¬á »αÑαδóá¡¿⌐. Segm:Offs »α¿¡¿¼áεΓ º¡áτÑ¡¿∩ áñαÑß«ó, »« ¬«Γ«αδ¼
»α«¿ßσ«ñ¿Γ ¼ÑªßÑú¼Ñ¡Γ¡δ⌐ »ÑαÑσ«ñ.
SCAN
----
æ¬á¡¿α«óá¡¿Ñ »á¼∩Γ¿. Segm »α¿¡¿¼áÑΓ º¡áτÑ¡¿∩ «Γ 0000 ñ« ßÑú¼Ñ¡Γ¡«ú« áñαÑßá
óδ»«½¡∩Ѽ«⌐ á¡Γ¿ó¿απß¡«⌐ »α«úαá¼¼δ.
FULL_SCAN
---------
Å«½¡«Ñ ߬᡿α«óá¡¿Ñ »á¼∩Γ¿. Segm »α¿¡¿¼áÑΓ º¡áτÑ¡¿∩ «Γ 0000 ñ« A000h.
SPECIAL
-------
Åα¿ ¿ß»«½∞º«óá¡¿¿ φΓ«ú« ¼ÑΓ«ñá »α«¿ßσ«ñ¿Γ ó맮ó ߻ѵ¿á½∞¡«⌐ »«ñ»α«úαá¼¼δ
«í¡áαπªÑ¡¿∩/ñѺá¬Γ¿óᵿ¿ ó¿απßá. Åα¿ φΓ«¼ ó ºá»¿ß∞ ñ«½ªÑ¡ íδΓ∞ ó¬½ετÑ¡
«íΩÑ¬Γ¡δ⌐ ¬«ñ ½Ñτ¿½¬¿ »α¿ »«¼«Θ¿ Σπ¡¬µ¿¿ Link.
Åα¿¼Ñα ¿ß»«½∞º«óá¡¿∩
====================
Äí½áßΓ∞ »á¼∩Γ¿, ºáαáªÑ¡¡á∩ ó¿απß«¼:
1234:0123 80 FC 3D CMP AH,3Dh
1234:0126 74 xx JE Infect_File
1234:0128 E9 xx xx JMP Continue
1234:012B . . . . . . . . .
ÅÑαóδ⌐ ß»«ß«í πñá½Ñ¡¿∩ ó¿απßá: TRACE
------------------------------------
çừ½¡Ñ¡¿Ñ »«½Ñ⌐ ºá»¿ß¿:
Method TRACE
Segment 0000
Offset_1 0000
Control_Byte xx <<< ºá»«½¡∩ÑΓß∩ »« »α«Γ«Γ¿»π ¬«¼á¡ñ«⌐ Sum
Len_1 8
Sum xxxxxxxx <<< ºá»«½¡∩ÑΓß∩ »« »α«Γ«Γ¿»π ¬«¼á¡ñ«⌐ Sum
Offset_2 3
Len_2 2
Replace_Bytes 90 90
Å«ß½Ñ ºá»πß¬á ¡á ΓÑßΓ¿α«óá¡¿Ñ »á¼∩Γ¿ ó¿απß íπñÑΓ πñá½Ñ¡:
1234:0123 80 FC 3D CMP AH,3Dh
1234:0126 90 NOP
1234:0127 90 NOP
1234:0128 E9 xx xx JMP Continue
1234:012B . . . . . . . . .
éΓ«α«⌐ ß»«ß«í πñá½Ñ¡¿∩ ó¿απßá: MCB
----------------------------------
çừ½¡Ñ¡¿Ñ »«½Ñ⌐ ºá»¿ß¿:
Method MCB
Segment 0000
Offset_1 0123
Control_Byte xx <<< ºá»«½¡∩ÑΓß∩ »« »α«Γ«Γ¿»π ¬«¼á¡ñ«⌐ Sum
Len_1 8
Sum xxxxxxxx <<< ºá»«½¡∩ÑΓß∩ »« »α«Γ«Γ¿»π ¬«¼á¡ñ«⌐ Sum
Offset_2 0126
Len_2 2
Replace_Bytes 90 90
3.4. çỿß∞ Γ¿»á SECTOR
────────────────────────────────────────────────────────────────────
æΓαπ¬Γπαá ºá»¿ß¿
================
Type Γ¿» ºá»¿ß¿ (BOOT ¿/¿½¿ MBR)
Name ¿¼∩ ó¿απßá
Offset_1 ß¼ÑΘÑ¡¿Ñ ñ½∩ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 1
Len_1 ñ½¿¡á ¬«ñá ñ½∩ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 1
Sum_1 º¡áτÑ¡¿Ñ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 1
Page_2 ßΓαá¡¿µá ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 2
Offset_2 ß¼ÑΘÑ¡¿Ñ ñ½∩ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 2
Len_2 ñ½¿¡á ¬«ñá ñ½∩ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 2
Sum_2 º¡áτÑ¡¿Ñ ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ 2
Cure_Method ¼ÑΓ«ñ πñá½Ñ¡¿∩ ó¿απßá
Cure_Page ßΓαá¡¿µá ñ½∩ πñá½Ñ¡¿∩ ó¿απßá
Cure_Addr_A ñá¡¡δÑ ñ½∩ πñá½Ñ¡¿∩ ó¿απßá
Cure_Addr_B ñá¡¡δÑ ñ½∩ πñá½Ñ¡¿∩ ó¿απßá
Cure_Offset º¡áτÑ¡¿Ñ ß¼ÑΘÑ¡¿∩ ñ½∩ πñá½Ñ¡¿∩ ó¿απßá
Ä»Ñαᵿ¿
========
Link óδºδóáÑΓ ñ¿á½«ú ó¬½ετÑ¡¿∩ ó ºá»¿ß∞ «íΩÑ¬Γ¡«ú« ¬«ñá
Sum óδºδóáÑΓ ñ¿á½«ú »«ñßτÑΓá ¬«¡Γα«½∞¡δσ ßπ¼¼
ǽú«α¿Γ¼ «íαáí«Γ¬¿ ºá»¿ß¿
=========================
ÅÑαÑñ óδº«ó«¼ »α«µÑñπαδ ΓÑßΓ¿α«óá¡¿∩/πñá½Ñ¡¿∩ ó¿απßá ¿º ßÑ¬Γ«αá ß«ñÑন¼«Ñ
φΓ«ú« ßÑ¬Γ«αá (200h íá⌐Γ) ßτ¿ΓδóáÑΓß∩ ó ßΓαá¡¿µπ HEADER. æ«ñÑন¼«Ñ
«ßΓá½∞¡δσ ßΓαá¡¿µ «í¡π½∩ÑΓß∩. é ßΓαá¡¿µÑ HEADER, ¡áτ¿¡á∩ ß« ß¼ÑΘÑ¡¿∩
Offset_1, ¡á Len_1 íá⌐Γáσ »«ñßτ¿ΓδóáÑΓß∩ ¬«¡Γα«½∞¡á∩ ßπ¼¼á, ¬«Γ«αá∩ ºáΓѼ
ßαáó¡¿óáÑΓß∩ ß« º¡áτÑ¡¿Ñ¼ »«½∩ Sum_1. àß½¿ º¡áτÑ¡¿∩ ß«ó»áñáεΓ, Γ« ó
ßΓαá¡¿µÑ Page_2 »«ñßτ¿ΓδóáÑΓß∩ óΓ«αá∩ ¬«¡Γα«½∞¡á∩ ßπ¼¼á. àß½¿ »«ñ¬½ετÑ¡á
߻ѵ¿á½∞¡á∩ »«ñ»α«úαá¼¼á decode(), Γ« »ÑαÑñ »«ñßτÑΓ«¼ óΓ«α«⌐ ßπ¼¼δ
»α«¿ßσ«ñ¿Γ ó맮ó ߻ѵ¿á½∞¡«⌐ »«ñ»α«úαá¼¼δ (¡á»α¿¼Ñα, ñ½∩ αáßΦ¿Σα«óá¡¿∩ Γѽá
ó¿απßá). Åα¿ φΓ«¼ ó ºá»¿ß∞ ñ«½ªÑ¡ íδΓ∞ ó¬½ετÑ¡ «íΩÑ¬Γ¡δ⌐ ¬«ñ αáßΦ¿Σα«óΘ¿¬á
»α¿ »«¼«Θ¿ Σπ¡¬µ¿¿ Link.
àß½¿ ß«ó»á½¿ «íÑ ¬«¡Γα«½∞¡δÑ ßπ¼¼δ, Γ« πñá½Ñ¡¿Ñ ó¿απßá »α«¿ºó«ñ¿Γß∩ ó
ß««ΓóÑΓßΓó¿¿ ß ¼ÑΓ«ñ«¼ Cure_Method. Åα¿ πñá½Ñ¡¿¿ ó¿απßá ó ¬áτÑßΓóÑ
»áαá¼ÑΓα«ó ¿ß»«½∞ºπεΓß∩ º¡áτÑ¡¿∩ »«½Ñ⌐ Cure_Addr_A, Cure_Addr_B,
Cure_Offset.
ǡὫú¿τ¡« ß½πτáε Σá⌐½«ó«⌐ ºá»¿ß¿, Ñß½¿ »«ñ¬½ετÑ¡¡á∩ ߻ѵ¿á½∞¡á∩
»«ñ»α«úαá¼¼á cure() ó«ºóαáΓ¿½á R_PRECURE, Γ« ½ÑτÑ¡¿Ñ »α«ñ«½ªáÑΓß∩ »«
π¬áºá¡¡«¼π ó ºá»¿ß¿ ßΓá¡ñáαΓ¡«¼π ¼ÑΓ«ñπ.
Åα¿ ó«ßßΓá¡«ó½Ñ¡¿¿ ºáúαπº«τ¡«ú« ßÑ¬Γ«αá (Boot ¿½¿ MBR), áñαÑß φΓ«ú« ßÑ¬Γ«αá
¼«ªÑΓ íδΓ∞ »αÑñßΓáó½Ñ¡ ó ñóπσ ó¿ñáσ: ó ó¿ñÑ áíß«½εΓ¡«ú« áñαÑßá (Σ¿º¿τÑ߬á∩
áñαÑßᵿ∩ ¬ ΓαѬπ, ßΓ«α«¡Ñ ¿ ßÑ¬Γ«απ ñ¿ß¬á) ¿ ó ó¿ñÑ ½«ú¿τÑ߬«ú« áñαÑßá
(áñαÑßᵿ∩ ¬ ßÑ¬Γ«α𠽫ú¿τÑ߬«ú« ñ¿ß¬á). é »Ñαó«¼ ß½πτáÑ ß½πτáÑ áñαÑß
ß«ßΓ«¿Γ ¿º ñóπσ º¡áτÑ¡¿⌐, ó« óΓ«α«¼ - ¿º «ñ¡«ú«; ó αẽ¿τ¡δσ ß½πτá∩σ
¿ß»«½∞ºπεΓß∩ αẽ¿τ¡δÑ »αÑαδóá¡¿∩.
ÇñαÑßᵿ∩ ÇñαÑß ßÑ¬Γ«αá ÅαÑαδóá¡¿Ñ
--------- ------------- ----------
½«ú¿τÑ߬á∩ ¡«¼Ñα ½«ú¿τÑ߬«ú« INT 25h/26h
ßÑ¬Γ«αá: CX
áíß«½εΓ¡á∩ ¡«¼Ñα ΓαÑ¬á ¿ ßÑ¬Γ«αá - CX INT 13h
¡«¼Ñα ßΓ«α«¡δ ñ¿ß¬á - DH
îÑΓ«ñδ πñá½Ñ¡¿∩ ó¿απßá
======================
ADDRESS
-------
êß»«½∞ºπÑΓß∩ áíß«½εΓ¡á∩ áñαÑßᵿ∩. ÅÑαó«¡áτá½∞¡δ⌐ MBR ¿½¿ Boot-ßÑ¬Γ«α
»ÑαѼÑΘáÑΓß∩ ¿º ßÑ¬Γ«αá ß áíß«½εΓ¡δ¼ áñαÑß«¼ Cure_Addr_A/Cure_Addr_B
(ΓαѬ&ßÑ¬Γ«α/ßΓ«α«¡á ¿½¿ CX/DH ó Σ«α¼áΓÑ INT 13h). Å«½∩ Cure_Page ¿
Cure_Offset ¡Ñ ¿ß»«½∞ºπεΓß∩.
ABSOLUTE
--------
êß»«½∞ºπÑΓß∩ áíß«½εΓ¡á∩ áñαÑßᵿ∩. MBR ¿½¿ Boot-ßÑ¬Γ«α ßτ¿ΓδóáεΓß∩ ¿º
ßÑ¬Γ«αá ß áíß«½εΓ¡δ¼ áñαÑß«¼ CX/DH (ΓαѬ&ßÑ¬Γ«α/ßΓ«α«¡á). ç¡áτÑ¡¿∩ CX ¿
DH íÑαπΓß∩ ¿º ßΓαá¡¿µδ Cure_Page: CX ¬á¬ ß½«ó« »« ß¼ÑΘÑ¡¿ε Cure_Addr_A,
DH - íá⌐Γ »« ß¼ÑΘÑ¡¿ε Cure_Addr_B. çáΓѼ ¬ CX ñ«íáó½∩ÑΓß∩ º¡áτÑ¡¿Ñ
Cure_Offset.
CX = word ptr Cure_Page [Cure_Addr_A] + Cure_Offset
DH = byte ptr Cure_Page [Cure_Addr_B]
LOGICAL
-------
ÆᬠªÑ, ¬á¬ ¿ ó ¼ÑΓ«ñÑ ABSOLUTE, áñαÑß ßÑ¬Γ«αá, ß«ñÑαªáΘÑú« «α¿ú¿¡á½∞¡δ⌐
ºáúαπºτ¿¬ ¿½¿ ¡áτὫ ó¿απßá, óδñѽ∩ÑΓß∩ ¿º ßΓαá¡¿µδ Cure_Page. ì« ó
ñá¡¡«¼ ß½πτáÑ ¿ß»«½∞ºπÑΓß∩ ½«ú¿τÑ߬á∩ áñαÑßᵿ∩, á ßΓáαδ⌐ MBR ¿½¿
Boot-ßÑ¬Γ«α »ÑαѼÑΘáÑΓß∩ ¿º ßÑ¬Γ«αá ß ½«ú¿τÑ߬¿¼ ¡«¼Ñα«¼ CX:
CX = word ptr Cure_Page [Cure_Addr_A] + Cure_Offset
Å«½Ñ Cure_Addr_B ¡Ñ ¿ß»«½∞ºπÑΓß∩.
OVERWRITE
---------
é ºáúαπº«τ¡δ⌐ ßÑ¬Γ«α ºá»¿ßδóáÑΓß∩ ßΓá¡ñáαΓ¡δ⌐ ºáúαπºτ¿¬ ß¿ßΓѼδ. ¥Γ«Γ
¼ÑΓ«ñ ¡Ñ αáí«ΓáÑΓ, Ñß½¿ ºáαáªÑ¡¡δ⌐ ñ¿ß¬ íδ½ «ΓΣ«α¼áΓ¿α«óá¡ ß
¿ß»«½∞º«ó᡿Ѽ ¡ÑßΓá¡ñáαΓ¡δσ ¼ÑΓ«ñ«ó.
FAIL
----
¥Γ«Γ ¼ÑΓ«ñ óδñáÑΓ ß««íΘÑ¡¿Ñ "virus NAME cure failed". êß»«½∞ºπÑΓß∩ ¬á¬
óαѼѡ¡δ⌐ ñ½∩ ΓÑσ ó¿απß«ó, ¼ÑΓ«ñ ¡áñѪ¡«ú« πñá½Ñ¡¿∩ ¬«Γ«αδσ ¡áσ«ñ¿Γß∩ ó
ßΓáñ¿¿ αáºαáí«Γ¬¿.
SPECIAL
-------
Åα¿ ¿ß»«½∞º«óá¡¿¿ φΓ«ú« ¼ÑΓ«ñá »α«¿ßσ«ñ¿Γ ó맮ó ߻ѵ¿á½∞¡«⌐ »«ñ»α«úαá¼¼δ
πñá½Ñ¡¿∩ ó¿απßá. Åα¿ φΓ«¼ ó ºá»¿ß∞ ñ«½ªÑ¡ íδΓ∞ ó¬½ετÑ¡ «íΩÑ¬Γ¡δ⌐ ¬«ñ ½Ñτ¿½¬¿
»α¿ »«¼«Θ¿ Σπ¡¬µ¿¿ Link.
Åα¿¼Ñα ¿ß»«½∞º«óá¡¿∩
====================
Boot-ßÑ¬Γ«α ñ¿ß¬ÑΓδ ºáαáªÑ¡ ó¿απß«¼ "Stoned". Åα¿ ºáαáªÑ¡¿¿ ñ¿ß¬ÑΓδ ó¿απß
ß«σαá¡∩ÑΓ »Ñαó«¡áτá½∞¡δ⌐ ßÑ¬Γ«α »« áíß«½εΓ¡«¼π áñαÑßπ 3/1
(ßÑ¬Γ«α/ßΓ«α«¡á). ä«íáó½Ñ¡¿Ñ ß««ΓóÑΓßΓóπεΘÑ⌐ ºá»¿ß¿ íπñÑΓ óδú½∩ñÑΓ∞
ß½ÑñπεΘ¿¼ «íαẫ¼:
çừ½¡Ñ¡¿Ñ »«½Ñ⌐ ºá»¿ß¿:
Type BOOT
Name Stoned
Offset_1 00
Len_1 08
Sum_1 xxxxxxxx <<< ºá»«½¡∩ÑΓß∩ »« »α«Γ«Γ¿»π ¬«¼á¡ñ«⌐ Sum
Page_2 HEADER
Offset_2 15
Len_2 80
Sum_2 xxxxxxxx <<< ºá»«½¡∩ÑΓß∩ »« »α«Γ«Γ¿»π ¬«¼á¡ñ«⌐ Sum
Cure_Method ADDRESS
Cure_Page FILE
Cure_Addr_A 03
Cure_Addr_B 01
Cure_Offset 00
3.5. ï¿¡¬ ߻ѵ¿á½∞¡δσ »α«úαá¼¼ (óÑαß¿∩ Pro)
────────────────────────────────────────────────────────────────────
æ»Ñµ¿á½∞¡δÑ »«ñ»α«úαá¼¼δ, »«ñ¬½ετáѼδÑ ¬ á¡Γ¿ó¿απß¡«⌐ íáºÑ ñá¡¡δσ,
»αÑñ¡áº¡áτÑ¡δ ñ½∩ αÑ὿ºáµ¿¿ á½ú«α¿Γ¼«ó «í¡áαπªÑ¡¿∩ ¿ πñá½Ñ¡¿∩ ó¿απß«ó,
Ñß½¿ φΓ¿ á½ú«α¿Γ¼δ ¡Ñ «»¿ßδóáεΓß∩ ßΓá¡ñáαΓ¡δ¼¿ Σπ¡¬µ¿∩¼¿ íáºδ ñá¡¡δσ.
êßσ«ñ¡δÑ ΓѬßΓδ ߻ѵ¿á½∞¡δσ »α«µÑñπα ¼«úπΓ íδΓ∞ ¡á C, ÇßßѼí½ÑαÑ ¿½¿ ñαπú¿σ
∩ºδ¬áσ, »«ññÑনóáεΘ¿σ ßΓá¡ñáαΓ ∩ºδ¬á C ó맮óá »«ñ»α«úαá¼¼. ÉѬ«¼Ñ¡ñπѼδ⌐
¬«¼»¿½∩Γ«α ñ½∩ ß«ºñá¡¿∩ ߻ѵ¿á½∞¡δσ »«ñ»α«úαá¼¼ - Turbo æ/æ++ ¿½¿ Borland
C++.
æ»Ñµ¿á½∞¡δÑ »«ñ»α«úαá¼¼δ ¬«¼»¿½¿απεΓß∩ ó «íΩÑ¬Γ¡δÑ ¬«ñδ (OBJ-Σá⌐½δ) ¿
»«ñ¬½ετáεΓß∩ ¬ íáºÑ ñá¡¡δσ. Åα¿ ºáúαπº¬Ñ íáºδ ñ½∩ ΓÑßΓ¿α«óá¡¿∩/½ÑτÑ¡¿∩
»«ñ¬½ετÑ¡¡δÑ OBJ-Σá⌐½δ íπñπΓ ßτ¿Γá¡δ ó »á¼∩Γ∞ ¿ ß½¿¡¬«óá¡δ ß «ß¡«ó¡δ¼
EXE-¼«ñπ½Ñ¼. é ñá½∞¡Ñ⌐ΦѼ «ß¡«ó¡«⌐ ¼«ñπ½∞ íπñÑΓ »α¿ ¡Ñ«íσ«ñ¿¼«ßΓ¿
«íαáΘáΓ∞ß∩ ¬ »«ñ¬½ετÑ¡¡δ¼ OBJ-¼«ñπ½∩¼ ¬á¬ ¬ τáßΓ¿ ßó«Ñú« ¬«ñá.
Åα¿ ¬«¼»¿½∩µ¿¿ ¿ßσ«ñ¡δσ ¼«ñπ½Ñ⌐ ó «íΩÑ¬Γ¡δÑ αѬ«¼Ñ¡ñπÑΓß∩ ¿ß»«½∞º«óáΓ∞
SMALL ¼«ñѽ∞, Ñß½¿ ó ¼«ñπ½Ñ ¡ÑΓ ßΓáΓ¿τÑ߬¿σ ñá¡¡δσ, ¿ HUGE ¼«ñѽ∞, Ñß½¿
ßΓáΓ¿τÑ߬¿Ñ ñá¡¡δÑ »α¿ßπΓßΓóπεΓ ó ¼«ñπ½Ñ. êß»«½∞º«óá¡¿Ñ ¼«ñѽ¿ TINY
ºá»αÑΘÑ¡«. ìá»α¿¼Ñα, ¬«¼»¿½∩µ¿∩ ¼«ñπ½∩ FILENAME.C ó Σá⌐½ FILENAME.OBJ
¬«¼»¿½∩Γ«α«¼ Borland C++ ¼«ªÑΓ íδΓ∞ óδ»«½¡Ñ¡á ß½ÑñπεΘÑ⌐ ¬«¼á¡ñ«⌐:
bcc -mh -c -K filename.c
æΓá¡ñáαΓ¡δÑ ¿¼Ñ¡á »α«úαá¼¼
──────────────────────────
é ߻ѵ¿á½∞¡δσ »α«úαá¼¼áσ «í∩ºáΓѽ∞¡« ñ«½ª¡δ »α¿ßπΓßΓó«óáΓ∞ «ñ¡á ¿½¿
¡Ñ߬«½∞¬« (ó ºáó¿ß¿¼«ßΓ¿ «Γ Γ¿»á ºá»¿ß¿, ¿º ¬«Γ«α«⌐ óδºδóáÑΓß∩ »α«úαá¼¼á)
»«ñ»α«úαá¼¼ ß« ßΓá¡ñáαΓ¡δ¼¿ ¿¼Ñ¡á¼¿ (¬á¬ ó »α«úαá¼¼Ñ ¡á ∩ºδ¬Ñ C «í∩ºá¡á
»α¿ßπΓßΓó«óáΓ∞ »«ñ»α«úαá¼¼á ß ¿¼Ñ¡Ñ¼ main). ê¼ÑÑΓß∩ Γα¿ ßΓá¡ñáαΓ¡δσ ¿¼Ñ¡¿:
decode() {Γѽ« »«ñ»α«úαá¼¼δ} // »α«µÑñπαá αáßΦ¿Σα«ó¬¿
cure() {Γѽ« »«ñ»α«úαá¼¼δ} // »α«µÑñπαá ½ÑτÑ¡¿∩
jmp() {Γѽ« »«ñ»α«úαá¼¼δ} // »α«µÑñπαá «»αÑñѽѡ¿∩ Γ«τ¬¿ óσ«ñá
ê¼Ñ¡á decode ¿ cure ¼«úπΓ ¿ß»«½∞º«óáΓ∞ß∩ αáºñѽ∞¡« ¿½¿ ó¼ÑßΓÑ ó ºá»¿ß∩σ,
«ΓóÑτáεΘ¿σ ºá «í¡áαπªÑ¡¿Ñ ¿ πñá½Ñ¡¿Ñ ó¿απßá ¿º Σá⌐½«ó ¿ ßÑ¬Γ«α«ó. é
ºá»¿ß∩σ, «ΓóÑτáεΘ¿σ ºá ΓÑßΓ¿α«óá¡¿Ñ »á¼∩Γ¿, ¼«ªÑΓ »α¿ßπΓßΓó«óáΓ∞ Γ«½∞¬«
»«ñ»α«úαá¼¼á cure(). é ºá»¿ß∩σ, «»αÑñѽ∩εΘ¿σ Γ«τ¬π óσ«ñá ó Σá⌐½δ,
¿ß»«½∞ºπεΓß∩ Γ«½∞¬« »α«úαá¼¼δ Γ¿»á jmp.
êß»«½∞º«óá¡¿Ñ ó¡ÑΦ¡¿σ ¿¼Ñ¡
──────────────────────────
æ»Ñµ¿á½∞¡δÑ »α«úαá¼¼δ ¼«úπΓ ¿ß»«½∞º«óáΓ∞ ó¡ÑΦ¡¿Ñ ¿¼Ñ¡á »«ñ»α«úαá¼¼ ¿
ñá¡¡δσ. ÅÑαÑñ «íαáΘÑ¡¿Ñ¼ ¬ φΓ¿¼ ¿¼Ñ¡á¼ ¡Ñ«íσ«ñ¿¼«, ¬á¬ ¿ ó ßΓá¡ñáαΓ¡«¼ C,
«»¿ßáΓ∞ φΓ¿ ¿¼Ñ¡á ¬á¬ ó¡ÑΦ¡¿Ñ.
Ä»¿ßá¡¿∩ ßΓá¡ñáαΓ¡δσ ¿¼Ñ¡, «»αÑñѽѡ¡δσ ó «ß¡«ó¡«¼ ¼«ñπ½Ñ, »«¼ÑΘÑ¡δ ó Σá⌐½
ºáú«½«ó¬á SAMPLES\DLINK.H ¿ «Γ¬«¼¼Ñ¡Γ¿α«óá¡δ.
ÄíαáΘÑ¡¿Ñ ¬ ¿¼Ñ¡á¼, «»αÑñѽѡ¡δ¼ ó «ß¡«ó¡«¼ ¼«ñπ½Ñ, ¼«ªÑΓ »α«¿ºó«ñ¿Γß∩ ¿º
½εí«⌐ ºá»¿ß¿ íáºδ ñá¡¡δσ. ÉáºαÑΦÑ¡« «íαáΘáΓ∞ß∩ ¬ ¿¼Ñ¡á¼, «»αÑñѽѡ¡δ¼ ¡Ñ ó
«ß¡«ó¡«¼ EXE-¼«ñπ½Ñ, á ó ñαπú¿σ ºá»¿ß∩σ íáºδ ñá¡¡δσ. Åα¿ φΓ«¼ ºá»¿ß∞, ó
¬«Γ«α«⌐ «»αÑñѽѡ« ¿¼∩, ñ«½ª¡á αáß»«½áúáΓ∞ß∩ ó íáºÑ αá¡∞ΦÑ ºá»¿ß¿, ó
¬«Γ«α«⌐ ¿¼ÑÑΓß∩ ßßδ½¬á ¡á φΓ« ¿¼∩. ìá»α¿¼Ñα:
ÉáºαÑΦÑ¡«:
çỿß∞ Cascade-1701: «»αÑñѽѡ« ¿¼∩ »«ñ»α«úαá¼¼δ Decode_Cascade(...) {...}
óδº«ó »«ñ»α«úαá¼¼δ Decode_Cascade(...)
çỿß∞ Cascade-1704: óδº«ó »«ñ»α«úαá¼¼δ Decode_Cascade(...)
çá»αÑΘÑ¡« (ó맮ó ó¡ÑΦ¡Ñú« ¿¼Ñ¡¿ óßΓαÑτáÑΓß∩ αá¡∞ΦÑ «»αÑñѽѡ¿∩ ßἫú«
¿¼Ñ¡¿):
çỿß∞ Cascade-1701: óδº«ó »«ñ»α«úαá¼¼δ Decode_Cascade(...)
çỿß∞ Cascade-1704: «»αÑñѽѡ« ¿¼∩ »«ñ»α«úαá¼¼δ Decode_Cascade(...) {...}
óδº«ó »«ñ»α«úαá¼¼δ Decode_Cascade(...)
────────────────────────────────────────────────────────────────────
4. ÉѺ¿ñÑ¡Γ¡δ⌐ á¡Γ¿ó¿απß¡δ⌐ ¼«¡¿Γ«α AVPTSR
────────────────────────────────────────────────────────────────────
î«¡¿Γ«α AVPTSR - φΓ« αѺ¿ñÑ¡Γ¡« ¡áσ«ñ∩Θ¿⌐ß∩ ó »á¼∩Γ¿ ¬«¼»∞εΓÑα¡δ⌐ "ñÑΓÑ¬Γ«α
½ª¿". æ »«¼«Θ∞ε AVPTSR ¼«ª¡« «ßΓá¡«ó¿Γ∞ αáß»α«ßΓαá¡Ñ¡¿Ñ ¬«¼»∞εΓÑα¡«ú« ó¿απßá
¡á ßἫ⌐ αá¡¡Ñ⌐ ßΓáñ¿¿. èα«¼Ñ Γ«ú«, ¼«¡¿Γ«α »«½ÑºÑ¡ »α¿ αáí«ΓÑ ß
»α«úαἼἿ, »«ñ«ºα¿Γѽ∞¡δ¼¿ ¡á ¡á½¿τ¿Ñ ó¿απßá ¿½¿ "Γα«∩¡ß¬«ú« ¬«¡∩", ¿ »α¿
αáºαáí«Γ¬Ñ αѺ¿ñÑ¡Γ¡δσ »α«úαá¼¼. î«¡¿Γ«α »«ºó«½∩ÑΓ ß½Ññ¿Γ∞ ºá αáß»αÑñѽѡ¿Ñ¼
«»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿ ¬«¼»∞εΓÑαá («¬¡« "Memory Map" ó «ß¡«ó¡«¼ ¼Ñ¡ε ¼«¡¿Γ«αá),
¿, Γᬿ¼ «íαẫ¼, ßó«ÑóαѼѡ¡« «í¡áαπª¿óáΓ∞ αѺ¿ñÑ¡Γ¡δÑ ó¿απßδ. Åα¿ »«¼«Θ¿
¼Ñ¡ε ¼«¡¿Γ«αá ¼«ª¡« óδíαáΓ∞, ¡á ¬á¬¿Ñ ¿º 󫺼«ª¡δσ "»«ñ«ºα¿Γѽ∞¡δσ" ß¿Γπᵿ⌐
«¡ ñ«½ªÑ¡ αÑáú¿α«óáΓ∞.
Äß¡«ó¡δÑ Σπ¡¬µ¿¿ ¼«¡¿Γ«αá:
- ñÑΓÑ¬Γ¿α«óá¡¿Ñ Σá⌐½«ó ¿ ñ¿ß¬«ó, ºáαáªÑ¡¡δσ ó¿απßἿ;
- í½«¬¿α«ó¬á ¿º¼Ñ¡Ñ¡¿∩ ¿ »ÑαÑ¿¼Ñ¡«óá¡¿∩ óδ»«½¡∩Ѽδσ
»α«úαá¼¼ (.COM- ¿ EXE-Σá⌐½«ó);
- í½«¬¿α«ó¬á ºá»¿ß¿ ¡á ñ¿ß¬ »« áíß«½εΓ¡«¼π áñαÑßπ ¿ Σ«α¼áΓ¿α«óá¡¿∩ ñ¿ß¬á;
- í½«¬¿α«ó¬á »«∩ó½Ñ¡¿∩ αѺ¿ñÑ¡Γ¡δσ »α«úαá¼¼;
- ¬«¡Γα«½∞ ºá ¡Ñ¬«Γ«α묨 «»áß¡δ¼¿ Σπ¡¬µ¿∩¼¿ DOS;
- ¬«¡Γα«½∞ ºá αáß»αÑñѽѡ¿Ñ¼ «»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿ ¬«¼»∞εΓÑαá;
- ¬«¡Γα«½∞ ºá ß«ßΓ«∩¡¿Ñ¼ ß¿ßΓѼ¡δσ «í½áßΓÑ⌐ DOS.
é맮ó «ß¡«ó¡«ú« ¼Ñ¡ε «ßπΘÑßΓó½∩ÑΓß∩ «ñ¡«óαѼѡ¡δ¼ ¡áªáΓ¿Ñ¼ ¬½áó¿Φ Alt ¿ "-",
óδσ«ñ - ¡áªáΓ¿Ñ¼ ¬½áó¿Φ¿ ESC. Åα¿ ó맮óÑ ¼Ñ¡ε ¡á φ¬αá¡Ñ »«∩ó½∩εΓß∩ ñóá «¬¡á:
«¬¡« πßΓá¡«ó¬¿ αѪ¿¼«ó ¿ «¬¡« ¬áαΓδ »á¼∩Γ¿.
╔═════════════════╦══════════════════╤═════════════════╤═══════════╗
║Access to files √║ Total: 640 K │ ROM BIOS: 640 K │DOS: 640 K ║
║Memory check √╠════╤════╤═══════╤╧═══════════╤═════╧═══════════╣
║Format sector √║MCB │PSP │ Size │ Owner │ Hooked vectors ║
║Write to sector √╟────┼────┼───────┼────────────┼─────────────────╢
║Dangerous calls ║0A49│0A49│ 2,368│COMMAND.COM │2E ║
║Scan on EXE √║0ADE│0000│ 64│ free │ ║
║Scan on OPEN ║0AE3│0A49│ 256│COMMAND.COM │ ║
║Check all files ║0AF4│0B00│ 176│RTSR.COM │ ║
║Registers ║0B00│0B00│ 1,536│RTSR.COM │ ║
║Remove AVPTSR ║0B61│0B6D│ 176│PRN2FILE.EXE│ ║
╚═════════════════╣0B6D│0B6D│ 75,104│PRN2FILE.EXE│08 17 28 ED F0 F6║
░░░░░░░░░░░░░░░░░░║1DC4│1DD0│ 176│AVPTSR.EXE │ ║
░░░░░░░░░░░░░░░░░░║1DD0│1DD0│ 16,888│AVPTSR.EXE │09 13 1B 20 21 22║
░░░░░░░░░░░░░░░░░░║ │ │ │ │2A 2F 40 EE ║
░░░░░░░░░░░░░░░░░░║2113│0000│282,304│ free │FE ║
░░░░░░░░░░░░░░░░░░╚════╧════╧═══════╧════════════╧═════════════════╝
é ¼Ñ¡ε πßΓá¡«ó¬¿ αѪ¿¼«ó óδó«ñ¿Γß∩ ¿¡Σ«α¼áµ¿∩ «í á¬Γ¿ó¡«ßΓ¿ αѪ¿¼«ó
óδ∩ó½Ñ¡¿∩ ß««ΓóÑΓßΓóπεΘ¿σ "»«ñ«ºα¿Γѽ∞¡δσ" «»Ñαᵿ⌐ ¿ »α«¿ºó«ñ¿Γß∩ ¿σ
»ÑαÑπßΓá¡«ó¬á (¬½áó¿Φá ENTER). èα«¼Ñ Γ«ú«, «Γ¬½ετ¿Γ∞ ¿½¿ ó¬½ετ¿Γ∞ αѪ¿¼δ
¼«ª¡« »«óΓ«α¡δ¼ ºá»π߬«¼ AVPTSR. Åα¿ φΓ«¼ ¼«¡¿Γ«α ¡áσ«ñ¿Γ ó »á¼∩Γ¿ ¬«¼»∞εΓÑαá
ßó«ε αá¡ÑÑ ºáúαπªÑ¡¡πε ¬«»¿ε ¿ »ÑαÑñáÑΓ Ñ⌐ áαúπ¼Ñ¡Γδ, π¬áºá¡¡δÑ ó ¬«¼á¡ñ¡«⌐
ßΓ᫬Ñ.
4.1. ô»αáó½Ñ¡¿Ñ ¿º ¬«¼á¡ñ¡«⌐ ßΓ᫬¿
────────────────────────────────────────────────────────────────────
çá»π߬ ¼«¡¿Γ«αá AVPTSR ¿º DOS ¿¼ÑÑΓ ß½ÑñπεΘ¿⌐ Σ«α¼áΓ:
C:>AVPTSR [ß»¿ß«¬ áαúπ¼Ñ¡Γ«ó]
ä«»πßΓ¿¼δÑ áαúπ¼Ñ¡Γδ:
/A - ºá»αÑΓ¿Γ∞ ¬«¡Γα«½∞ ¿º¼Ñ¡Ñ¡¿∩ ¿ »ÑαÑ¿¼Ñ¡«óá¡¿∩ óδ»«½¡∩Ѽδσ Σá⌐½«ó.
/M - ºá»αÑΓ¿Γ∞ »α«óÑα¬π »á¼∩Γ¿.
/F - ºá»αÑΓ¿Γ∞ ¬«¡Γα«½∞ Σ«α¼áΓ¿α«óá¡¿∩ ñ¿ß¬«ó.
/W - ºá»αÑΓ¿Γ∞ ¬«¡Γα«½∞ ºá»¿ß¿ ¡á ñ¿ß¬ »« áíß«½εΓ¡«¼π áñαÑßπ.
/R - ºá»αÑΓ¿Γ∞ »«¬áº αÑú¿ßΓα«ó ¼¿¬α«»α«µÑßß«αá »α¿ ß««íΘÑ¡¿∩σ.
/D - ºá»αÑΓ¿Γ∞ ¬«¡Γα«½∞ «»áß¡δσ ó맮ó«ó.
/V - ºáúαπº¿Γ∞ á¡Γ¿ó¿απß¡πε íáºπ ñá¡¡δσ.
àß½¿ »α¿ »Ñαó«¼ ºá»π᪥ ¼«¡¿Γ«αá π¬áºá¡ áαúπ¼Ñ¡Γ "/V", Γ« ºáúαπªáÑΓß∩
á¡Γ¿ó¿απß¡á∩ íáºá ñá¡¡δσ (¼«¡¿Γ«α íπñÑΓ ºá¡¿¼áΓ∞ ßπΘÑßΓóÑ¡¡« í«½∞ΦÑ ¼ÑßΓá ó
»á¼∩Γ¿).
Åα¿ «ΓßπΓßΓó¿¿ áαúπ¼Ñ¡Γ«ó ó¬½ετáεΓß∩ óßÑ »α«óÑન (íáºá ñá¡¡δσ ¡Ñ
ºáúαπªáÑΓß∩). ìá»α¿¼Ñα, »α¿ ºá»π᪥ ¼«¡¿Γ«αá ßΓ᫬«⌐
C:>AVPTSR /A /F /R /V
íπñπΓ ó¬½ετÑ¡δ óßÑ »α«óÑન, ¬α«¼Ñ »α«óÑ᫬ ¿º¼Ñ¡Ñ¡¿∩ Σá⌐½«ó ¿
Σ«α¼áΓ¿α«óá¡¿∩ ñ¿ß¬«ó. Åα¿ ß««íΘÑ¡¿∩σ ß«ßΓ«∩¡¿Ñ αÑú¿ßΓα«ó ¼¿¬α«»α«µÑßß«αá
»«¬áºδóáΓ∞ß∩ ¡Ñ íπñÑΓ.
4.2. 滿߫¬ ß««íΘÑ¡¿⌐
────────────────────────────────────────────────────────────────────
Åα¿ «í¡áαπªÑ¡¿¿ ó¿απßá ó Σá⌐½Ñ ¿½¿ ¡á ñ¿ß¬Ñ AVPTSR ß««íΘáÑΓ «í φΓ«¼ ¿ ªñÑΓ
π¬áºá¡¿∩ ¡á »α«ñ«½ªÑ¡¿Ñ ¿½¿ áóáα¿⌐¡«Ñ ºáóÑαΦÑ¡¿Ñ. Åα¿ "»«ñ«ºα¿Γѽ∞¡«¼"
»«óÑñÑ¡¿¿ ¬«¼»∞εΓÑαá AVPTSR óδñáÑΓ »αÑñπ»αѪñÑ¡¿Ñ (¡á φ¬αá¡Ñ »«∩ó½∩ÑΓß∩
«¬¡« ß »«ñα«í¡«⌐ ¿¡Σ«α¼áµ¿Ñ⌐) ¿ ªñÑΓ π¬áºá¡¿∩ ¡á αáºαÑΦÑ¡¿Ñ ¿½¿ ºá»αÑΘÑ¡¿Ñ
ñá¡¡«ú« ñÑ⌐ßΓó¿∩:
┌────────────────────────────┐
│ PROGRAM_NAME │
│ dangerous call │
│ │
│ [ OK ] [ Cancel ] [ Free ] │
└────────────────────────────┘
Å«ß½Ñ óδñáτ¿ ½εí«ú« ¿º ß««íΘÑ¡¿⌐ ¼«¡¿Γ«αá ¡Ñ«íσ«ñ¿¼« ½¿í« αáºαÑΦ¿Γ∞ («ΓóÑΓ
OK), ½¿í« ºá»αÑΓ¿Γ∞ «»Ñαᵿε («ΓóÑΓ Cancel), óδºóáóΦπε ß««íΘÑ¡¿Ñ. Åα¿
αáºαÑΦÑ¡¿¿ «»Ñαᵿ¿ ¬«¼»∞εΓÑα »α«ñ«½ª¿Γ ÑÑ óδ»«½¡Ñ¡¿Ñ. Åα¿ ºá»αÑΘÑ¡¿¿
¼«¡¿Γ«α AVPTSR πßΓá¡«ó¿Γ π¬áºáΓѽ¿ «í «Φ¿í¬Ñ (¡á»α¿¼Ñα, "file not found",
"write protect" ¿ »α.) ¿ »α«¿ºóÑñÑΓ ó«ºóαáΓ ó »α«úαá¼¼π, óδºóáóΦπε
"»«ñ«ºα¿Γѽ∞¡πε" «»Ñαᵿε. àß½¿ »α¿ φΓ«¼ óδºδóáεΘá∩ »α«úαá¼¼á ¡Ñ »α«óÑα∩ÑΓ
»αáó¿½∞¡«ßΓ∞ óδ»«½¡Ñ¡¿∩ «»Ñαᵿ¿, Γ« αѺπ½∞ΓáΓ ÑÑ ñá½∞¡Ñ⌐ΦÑ⌐ αáí«Γδ
¡Ñ»αÑñ߬áºπѼ. 髺¼«ª¡« «Γ¬½ετÑ¡¿Ñ αѪ¿¼á »α«óÑન ñá¡¡«⌐ «»Ñαᵿ¿ («ΓóÑΓ
Free).
ìѬ«Γ«αδÑ «»Ñαᵿ¿ óδ»«½¡∩εΓß∩ ¼¡«ú«¬αáΓ¡« (¡á»α¿¼Ñα, »α¿ Σ«α¼áΓ¿α«óá¡¿¿
¿½¿ «»Γ¿¼¿ºáµ¿¿ ñ¿ß¬á). é φΓ«¼ ß½πτáÑ πñ«í¡« óαѼѡ¡« «Γ¬½ετ¿Γ∞
ß««ΓóÑΓßΓóπεΘ¿⌐ αѪ¿¼, »α¿ φΓ«¼ ¡Ñ íπñπΓ óδñáóáΓ∞ß∩ ß««íΘÑ¡¿∩ «í
«Γ¬½ετÑ¡¡«⌐ «»Ñαᵿ¿ (¡á»α¿¼Ñα, »α¿ Σ«α¼áΓ¿α«óá¡¿¿ ñ¿ß¬á ¡πª¡« «Γ¬½ετ¿Γ∞
αѪ¿¼ »α«óÑન ¡á Σ«α¼áΓ¿α«óá¡¿Ñ). ÄΓ¬½ετÑ¡¿Ñ αѪ¿¼«ó »α«¿ºó«ñ¿Γß∩ ½¿í«
óδº«ó«¼ «ß¡«ó¡«ú« ¼Ñ¡ε, ½¿í« »«óΓ«α¡δ¼ ºá»π߬«¼ ¼«¡¿Γ«αá, ½¿í«
ß««ΓóÑΓßΓóπεΘ¿¼ «ΓóÑΓ«¼ ¡á ºá»α«ß ¼«¡¿Γ«αá.
Äí¡áαπªÑ¡¿Ñ ó¿απß«ó
───────────────────
Åα¿ ßτ¿Γδóá¡¿¿ ¬á¬«⌐-½¿í« »α«úαá¼¼«⌐ Boot-ßÑ¬Γ«αá ñ¿ß¬á ¼«¡¿Γ«α »α«óÑα∩ÑΓ
φëà ßÑ¬Γ«α ¡á ¡á½¿τ¿Ñ ºáúαπº«τ¡«ú« ó¿απßá. Åα¿ »α«óÑñÑ¡¿¿ «»Ñαᵿ⌐ ß
Σá⌐½á¼¿ (óδ»«½¡Ñ¡¿Ñ, ¬«»¿α«óá¡¿Ñ, «Γ¬αδΓ¿Ñ ¿ ñα.) Σá⌐½δ »α«óÑα∩εΓß∩ ¡á
¡á½¿τ¿Ñ Σá⌐½«ó«ú« ó¿απßá. Åα¿ «í¡áαπªÑ¡¿¿ ºáαáªÑ¡¡«ú« ó¿απß«¼ Σá⌐½á ¿½¿
ßÑ¬Γ«αá óδñáÑΓß∩ ß««ΓóÑΓßΓóπεΘÑÑ ß««íΘÑ¡¿Ñ:
┌──────────────────────────────┐ ┌──────────────────────────────┐
│ Disk X: │ │ File FILE_NAME │
│ infected by virus VIRUS_NAME │ │ infected by virus VIRUS_NAME │
└──────────────────────────────┘ └──────────────────────────────┘
꺼ѡѡ¿Ñ ¿ »ÑαÑ¿¼Ñ¡«óá¡¿Ñ COM-, EXE- ¿ SYS-Σá⌐½«ó
──────────────────────────────────────────────────
¥Γ¿ ß««íΘÑ¡¿∩ íπñπΓ »«∩ó½∩Γ∞ß∩ »α¿ «»Ñαᵿ∩σ, óÑñπΘ¿σ ¬ ¿º¼Ñ¡Ñ¡¿ε COM- ¿½¿
EXE-Σá⌐½«ó (¿º¼Ñ¡Ñ¡¿Ñ ¿¼Ñ¡¿, «Γ¬αδΓ¿Ñ ñ½∩ ºá»¿ß¿, ß«ºñá¡¿Ñ Σá⌐½á). Å«ñ«í¡δÑ
ñÑ⌐ßΓó¿∩ »αÑñ»α¿¡¿¼áεΓß∩ »αá¬Γ¿τÑ߬¿ óßѼ¿ ó¿απßἿ (ºá ¿ß¬½ετÑ¡¿Ñ¼
ºáúαπº«τ¡δσ) »α¿ ¿¡Σ¿µ¿α«óá¡¿¿ Σá⌐½«ó.
┌───────────────────────────────┐
│ PROGRAM_NAME │
│ opening for writing FILE_NAME │
└───────────────────────────────┘
┌────────────────────┐
│ PROGRAM_NAME │
│ creating FILE_NAME │
└────────────────────┘
┌────────────────────┐
│ PROGRAM_NAME │
│ renaming FILE_NAME │
└────────────────────┘
è«¡Γα«½∞ íπΣÑα«ó ¿ ¬«¡Γα«½∞ »á¼∩Γ¿
──────────────────────────────────
î¡«ú¿Ñ ó¿απßδ «ßΓáó½∩εΓ ó »á¼∩Γ¿ ¬«¼»∞εΓÑαá ßó«ε αѺ¿ñÑ¡Γ¡πε τáßΓ∞,
¡Ñ¬«Γ«αδÑ ¿º ¡¿σ ¿ß»«½∞ºπεΓ ñ½∩ φΓ«ú« »αÑαδóá¡¿∩ DOS. é φΓ«¼ ß½πτáÑ íπñÑΓ
óδñá¡« ß««íΘÑ¡¿Ñ « »«»δ⪥ »α«úαá¼¼δ «ßΓáΓ∞ß∩ αѺ¿ñÑ¡Γ¡« ó »á¼∩Γ¿.
┌─────────────────────────────┐
│ PROGRAM_NAME stays resident │
└─────────────────────────────┘
ìѬ«Γ«αδÑ ó¿απßδ αẼÑΘáεΓ ßó«ε αѺ¿ñÑ¡Γ¡πε τáßΓ∞ ó íπΣÑαáσ DOS, ¿ß¬½ετá∩
ñá¡¡δÑ íπΣÑαá ¿º µÑ»«τ¬¿. Åα¿ ºáúαπº¬Ñ AVPTSR ºá»«¼¿¡áÑΓ ¬«½¿τÑßΓó« íπΣÑα«ó ó
µÑ»«τ¬Ñ ¿ »Ñα¿«ñ¿τÑ߬¿ »α«óÑα∩ÑΓ ¿σ. àß½¿ ¬«½¿τÑßΓó« íπΣÑα«ó π¼Ñ¡∞Φ¿½«ß∞,
¼«¡¿Γ«α óδñáÑΓ ß««íΘÑ¡¿Ñ
┌────────────────────────────────────────┐
│ Number of DOS buffers decreased on xxx │
└────────────────────────────────────────┘
ü«½∞Φ¿¡ßΓó« ó¿απß«ó αẼÑΘáεΓ ßó«ε αѺ¿ñÑ¡Γ¡πε τáßΓ∞ ó «í½áßΓ¿ »α«úαá¼¼,
π¼Ñ¡∞Φá∩ »α¿ φΓ«¼ ¬«½¿τÑßΓó« ßó«í«ñ¡«⌐ »á¼∩Γ¿. î«¡¿Γ«α »ÑαÑσóáΓδóáÑΓ ΓᬿÑ
ß¿Γπᵿ¿ ¿ óδñáÑΓ ß««íΘÑ¡¿Ñ
┌────────────────────────────────┐
│ Free memory decreased on xxx K │
└────────────────────────────────┘
Åα¿ ó¬½ετÑ¡¡«¼ αѪ¿¼Ñ "Memory check" ¼«¡¿Γ«α ó«ßßΓá¡áó½¿óáÑΓ Γáí½¿µπ
óÑ¬Γ«α«ó »αÑαδóá¡¿⌐ »«ß½Ñ «¬«¡τá¡¿∩ αáí«Γδ ¬áªñ«⌐ »α«úαá¼¼δ. ¥Γ« í½«¬¿απÑΓ
αáß»α«ßΓαá¡Ñ¡¿Ñ í«½∞Φ¿¡ßΓóá αѺ¿ñÑ¡Γ¡δσ ó¿απß«ó, á ¡Ñ¬«Γ«αδÑ ó¿απßδ
«¬áºδóáεΓß∩ »α«ßΓ« π¡¿τΓ«ªÑ¡¡δ¼¿.
çỿß∞ ¡á ñ¿ß¬ »« áíß«½εΓ¡«¼π áñαÑßπ ¿ Σ«α¼áΓ¿α«óá¡¿Ñ ñ¿ß¬á
───────────────────────────────────────────────────────────
┌─────────────────────────────┐
│ PROGRAM_NAME │
│ writing (int xx) on disk X: │
└─────────────────────────────┘
┌─────────────────────────────┐
│ PROGRAM_NAME │
│ formatting (int xx) disk X: │
└─────────────────────────────┘
äá¡¡δÑ ß««íΘÑ¡¿∩ ß¿ú¡á½¿º¿απεΓ « Γ«¼, τΓ« »α«úαá¼¼á "program_name" »δΓáÑΓß∩
ºá»¿ßáΓ∞ ¡á ñ¿ß¬ «ñ¿¡ ¿½¿ ¡Ñ߬«½∞¬« ßÑ¬Γ«α«ó, ¿ß»«½∞ºπ∩ áíß«½εΓ¡πε
áñαÑßᵿε ßÑ¬Γ«α«ó ¡á ñ¿ß¬Ñ ¿½¿ «ΓΣ«α¼áΓ¿α«óáΓ∞ «ñ¿¡ ¿½¿ ¡Ñ߬«½∞¬« ßÑ¬Γ«α«ó
¡á ñ¿ß¬Ñ. ¥Γ¿ Σπ¡¬µ¿¿ »αá¬Γ¿τÑ߬¿ ¡Ñ ¿ß»«½∞ºπεΓß∩ «íδτ¡δ¼¿ »α«úαἼἿ (ºá
¿ß¬½ετÑ¡¿Ñ¼ πΓ¿½¿Γ Σ«α¼áΓ¿α«óá¡¿∩, «»Γ¿¼¿ºáµ¿¿ ¿ ó«ßßΓá¡«ó½Ñ¡¿∩ ñ¿ß¬á),
ºáΓ« ¿ß»«½∞ºπεΓß∩ ¡Ñ¬«Γ«α묨 ó¿απßἿ. êß»«½∞º«óá¡¿Ñ »αÑαδóá¡¿⌐ 13h, 40h,
26h ∩ó½∩ÑΓß∩ «ñ¡¿¼ ¿º ßá¼δσ φΣΣÑ¬Γ¿ó¡δσ ß»«ß«í«ó π¡¿τΓ«ªÑ¡¿∩ ¿¡Σ«α¼áµ¿¿ ¡á
ñ¿ß¬Ñ, ó τáßΓ¡«ßΓ¿, Γáí½¿µ Disk Partition Table ¿ File Allocation Table.
éìêîÇìêà! Åα¿ ß««íΘÑ¡¿¿ « ºá»¿ß¿ ¿½¿ Σ«α¼áΓ¿α«óá¡¿¿ ßÑ¬Γ«α«ó ¡á ñ¿ß¬Ñ ß
¿ß»«½∞º«ó᡿Ѽ »αÑαδóá¡¿⌐ 13h ¿ 40h π¬áºδóáÑΓß∩ ¡«¼Ñα Σ¿º¿τÑ߬«ú« ñ¿ß¬á
('A:' - »Ñαóδ⌐, 'B:' - óΓ«α«⌐ ¿ Γ.ñ.). àß½¿ ó¿¡τÑßΓÑα αáºí¿Γ ¡á ¡Ñ߬«½∞¬«
½«ú¿τÑ߬¿σ ñ¿ß¬«ó, Γ« ó ß««íΘÑ¡¿¿ π¬áºδóáÑΓß∩ ¡«¼Ñα öêçêùàæèÄâÄ ñ¿ß¬á:
'C:', Ñß½¿ ¿ñÑΓ «íαáΘÑ¡¿Ñ ¬ »Ñαó«¼π ó¿¡τÑßΓÑαπ, 'D:' - Ñß½¿ ¬« óΓ«α«¼π. ä½∩
Γ«ú«, τΓ«íδ óδ∩ß¡¿Γ∞, ¡á ¬á¬«⌐ ïÄâêùàæèêë ñ¿ß¬ óÑñÑΓß∩ ºá»¿ß∞, ¡Ñ«íσ«ñ¿¼«
»α«á¡á½¿º¿α«óáΓ∞ Γáí½¿µδ αáºí¿Ñ¡¿∩ ñ¿ß¬á (Disk Partition Table) ¡á óßÑσ
½«ú¿τÑ߬¿σ ñ¿ß¬áσ.
é맮ó "«»áß¡δσ" Σπ¡¬µ¿⌐ DOS
───────────────────────────
┌────────────────┐
│ PROGRAM_NAME │
│ dangerous call │
└────────────────┘
Å«ñ«í¡δÑ ß««íΘÑ¡¿∩ ß¿ú¡á½¿º¿απεΓ « Γ«¼, τΓ« ¿ñÑΓ "«»áß¡«Ñ" «íαáΘÑ¡¿Ñ ¬ DOS,
Γ.Ñ. ¡Ñ ßó«⌐ßΓóÑ¡¡«Ñ »α¿¬½áñ¡δ¼ »α«úαá¼¼á¼. "Ä»áß¡δÑ" Σπ¡¬µ¿¿ DOS τáßΓ«
¿ß»«½∞ºπεΓß∩ ó¿απßἿ »α¿ αẼ¡«ªÑ¡¿¿.
ÉѪ¿¼ »«¬áºá αÑú¿ßΓα«ó
──────────────────────
Åα¿ ó¬½ετÑ¡¡«¼ αѪ¿¼Ñ "Registers" ß««íΘÑ¡¿∩ ¼«¡¿Γ«αá íπñπΓ ß«»α«ó«ªñáΓ∞ß∩
ß»¿ß¬«¼ ß«ßΓ«∩¡¿⌐ óßÑσ αÑú¿ßΓα«ó.
┌────────────────────────────┬───────────────────────────────────┐
│ PROGRAM_NAME │ CS:IP=xxxx:xxxx AX=xxxx CX=xxxx │
│ dangerous call │ SS:SP=xxxx:xxxx BX=xxxx DX=xxxx │
│ │ DS:SI=xxxx:xxxx BP=xxxx │
│ [ OK ] [ Cansel ] [ Free ] │ ES:DI=xxxx:xxxx Flags=xxxx │
└────────────────────────────┴───────────────────────────────────┘
4.3. èáαΓá »á¼∩Γ¿ ¼«¡¿Γ«αá
────────────────────────────────────────────────────────────────────
èáαΓá »á¼∩Γ¿ ß«ßΓ«¿Γ ¿º »∩Γ¿ ¬«½«¡«¬:
1 - ßÑú¼Ñ¡Γ¡δ⌐ áñαÑß í½«¬á αáß»αÑñѽѡ¿∩ »á¼∩Γ¿ (MCB);
2 - ßÑú¼Ñ¡Γ¡δ⌐ áñαÑß »αÑΣ¿¬ßá »α«úαá¼¼¡«ú« ßÑú¼Ñ¡Γá (PSP);
3 - αẼÑα í½«¬á ó íá⌐Γáσ;
4 - ¿¼∩ »α«úαá¼¼δ, ºá¡¿¼áεΘÑ⌐ í½«¬ »á¼∩Γ¿ ¿½¿ ¡áñ»¿ß∞ "free", Ñß½¿ í½«¬
ßó«í«ñÑ¡ (º¡á¬ "?" «º¡áτáÑΓ, τΓ« ¿¼∩ ¡Ñ «»αÑñѽѡ«);
5 - ¿ß»«½∞ºπѼδÑ óÑ¬Γ«αδ »αÑαδóá¡¿⌐.
ô¬áºδóáÑΓß∩ ΓᬪÑ:
ÉẼÑα «»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿, π¬áºδóáѼδ⌐ DOS ──────────┐
ÉẼÑα «»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿, π¬áºδóáѼδ⌐ ROM BIOS ──┐ │
äÑ⌐ßΓó¿Γѽ∞¡δ⌐ αẼÑα «»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿ ──────┐ │ │
│ │ │
ìÑß«ó»áñÑ¡¿Ñ º¡áτÑ¡¿⌐ »«½¡«ú« αẼÑαá »á¼∩Γ¿ │ │ │
("Total") ¿ αẼÑαá, π¬áºδóáѼ«ú« ROM BIOS │ │ │
¿½¿ DOS, τáßΓ« ß½πª¿Γ ß¿ú¡á½«¼ « ¡á½¿τ¿¿ │ │ │
ó¿απßá ó ß¿ßΓѼÑ. ì« ß½ÑñπÑΓ πτ¿ΓδóáΓ∞, τΓ« ó │ │ │
¡Ñ¬«Γ«αδσ ß½πτá∩σ φΓ« ¡Ñß«ó»áñÑ¡¿Ñ 󻫽¡Ñ │ │ │
ºá¬«¡¡«. │ │ │
┌────────────────────────┘ │ └──┐
│ ┌──────────┘ │
╔═════════════════╦════│═════════════╤══│══════════════╤═│═════════╗
║Access to files √║ Total: 640 K │ ROM BIOS: 640 K │DOS: 640 K ║
║Memory check √╠════╤════╤═══════╤╧═══════════╤═════╧═══════════╣
║Format sector √║MCB │PSP │ Size │ Owner │ Hooked vectors ║
║Write to sector √╟────┼────┼───────┼────────────┼─────────────────╢
║Dangerous calls ║0A49│0A49│ 2,368│COMMAND.COM │2E ║
║Scan on EXE √║0ADE│0000│ 64│ free │ ║
║Scan on OPEN ║0AE3│0A49│ 256│COMMAND.COM │ ║
║Check all files ║0AF4│0B00│ 176│RTSR.COM │ ║
║Registers ║0B00│0B00│ 1,536│RTSR.COM │ ║
║Remove AVPTSR ║0B61│0B6D│ 176│PRN2FILE.EXE│ ║
╚═════════════════╣0B6D│0B6D│ 75,104│PRN2FILE.EXE│08 17 28 ED F0 F6║
░░░░░░░░░░░░░░░░░░║1DC4│1DD0│ 176│AVPTSR.EXE │ ║
░░░░░░░░░░░░░░░░░░║1DD0│1DD0│ 16,888│AVPTSR.EXE │09 13 1B 20 21 22║
░░░░░░░░░░░░░░░░░░║ │ │ │ │2A 2F 40 EE ║
░░░░░░░░░░░░░░░░░░║2113│0000│282,304│ free │FE ║
░░░░░░░░░░░░░░░░░░║5B13│0000│279,296│ free │FE ║
░░░░░░░░░░░░░░░░░░║9F44│ - │ 3,008│ ? │1C 21 ────┐ ║
░░░░░░░░░░░░░░░░░░║A000│ - │ 98,304│EGA memory │ │ ║
░░░░░░░░░░░░░░░░░░╚════╧════╧═══════╧════════════╧══════════│══════╝
│
│
öá⌐½«óδ⌐ ó¿απß "Yankee" ───────┘
────────────────────────────────────────────────────────────────────
5. Ç¡Γ¿ó¿απß¡δÑ πΓ¿½¿Γδ AVPUTIL
────────────────────────────────────────────────────────────────────
ôΓ¿½¿Γδ »αÑñ¡áº¡áτÑ¡δ ñ½∩ á¡á½¿ºá ß«ßΓ«∩¡¿∩ ¬«¼»∞εΓÑαá »α¿ ºáαáªÑ¡¿¿ Ñú«
¡Ñ¿ºóÑßΓ¡δ¼ »α«úαá¼¼Ñ AVP.EXE ó¿απß«¼ ¿ ñ½∩ »α«óÑન "τ¿ßΓ«Γδ" «»ÑαáΓ¿ó¡«⌐
»á¼∩Γ¿ ¬«¼»∞εΓÑαá.
éìêîÇìêà! ìàÄæÆÄÉÄåìÄà êïê ìàèéÇïêöêûêÉÄéÇììÄà êæÅÄï£çÄéÇìêà ôÆêïêÆ îÄåàÆ
ÅÉêéàæÆê è çÇéêæÇìê₧ æêæÆàî¢ êïê è ÅÄÆàÉà äÇìì¢ò. äÇììǃ ÅÉÄâÉÇîîÇ
ÉÇææùêÆÇìÇ ÆÄï£èÄ ìÇ æêæÆàîì¢ò ÅÉÄâÉÇîîêæÆÄé, êîà₧Öêò äÄæÆÇÆÄùì¢ë ÄÅ¢Æ
ÉÇüÄÆ¢ æ MS-DOS.
é맮ó πΓ¿½¿Γ AVPUTIL »α«¿ßσ«ñ¿Γ ¿º ¬«¼á¡ñ¡«⌐ ßΓ᫬¿, ó맮ó αѺ¿ñÑ¡Γ¡«⌐
τáßΓ¿ «ßπΘÑßΓó½∩ÑΓß∩ «ñ¡«óαѼѡ¡δ¼ ¡áªáΓ¿Ñ¼ ú«α∩τ¿σ ¬½áó¿Φ Alt-"+" ¿½¿
Alt-Ctrl-'+'. Åα¿ φΓ«¼ ßΓá¡«ó∩Γß∩ ñ«ßΓδ»¡δ τÑΓδαÑ ¼Ñ¡ε:
Utilities óδº«ó ¿ π»αáó½Ñ¡¿Ñ «ß¡«ó¡δ¼¿ Σπ¡¬µ¿∩¼¿
Object óδí«α «íΩѬΓá
Block αáí«Γá ß í½«¬á¼¿ ¿ ¬«¼á¡ñδ »«¿ß¬á/ºá¼Ñ¡δ
Setup αѪ¿¼δ αáí«Γδ ¿ ¬«¼á¡ñδ óδσ«ñá
Åα¿ ºá»π᪥ AVPUTIL ¿º ¬«¼á¡ñ¡«⌐ ßΓ᫬¿ DOS ºáñáεΓß∩ ñóá ¡Ñ«í∩ºáΓѽ∞¡δσ
»áαá¼ÑΓαá:
AVPUTIL [option] [filename]
úñÑ
filename: ¿¼∩ Σá⌐½á ñ½∩ αÑñá¬Γ¿α«óá¡¿∩/«Γ½áñ¬¿
option:
/P - «ßΓáΓ∞ß∩ αѺ¿ñÑ¡Γ¡«
/V - ºáúαπº¿Γ∞ Σá⌐½ ñ½∩ αÑñá¬Γ¿α«óá¡¿∩ (ó »α«Γ¿ó¡«¼ ß½πτáÑ Σá⌐½
ºáúαπªáÑΓß∩ ó αѪ¿¼Ñ «Γ½áñ¬¿)
5.1. îÑ¡ε Utilities
────────────────────────────────────────────────────────────────────
îÑ¡ε "Utilities" ¿ß»«½∞ºπÑΓß∩ ñ½∩ ó맮óá «ß¡«ó¡δσ Σπ¡¬µ¿⌐:
╔════════════════════╗
║ Disassembler Alt-E ║ ñ¿ºáßßѼí½Ñα/«Γ½áñτ¿¬
║ Dump Alt-D ║ αÑñá¬Γ«α ñá¼»á
║ Memory map Alt-M ║ ¬áαΓá »á¼∩Γ¿
║ Interrupts Alt-I ║ Γáí½¿µá óÑ¬Γ«α«ó »αÑαδóá¡¿⌐
║ System info Alt-Y ║ ¿¡Σ«α¼áµ¿∩ « ß¿ßΓѼÑ
║ Trace result Alt-T ║ αѺπ½∞ΓáΓ Γαáßß¿α«ó¬¿
║ Files Alt-F ║ ß»¿ß«¬ Σá⌐½«ó
║ Zoom F5 ║ αáß»áσ¡πΓ∞/ºá¬αδΓ∞ «¬¡«
║ User screen Alt-F5 ║ »«¬áºáΓ∞ φ¬αá¡ »αÑαóá¡¡«⌐ »α«úαá¼¼δ
║ Next window F6 ║ »ÑαÑ⌐Γ¿ ó ß½ÑñπεΘÑÑ «¬¡«
╚════════════════════╝
5.1.1. 俺áßßѼí½Ñα/ÄΓ½áñτ¿¬
───────────────────────────────────────────────────────────────
俺áßßѼí½Ñα/ÄΓ½áñτ¿¬ »«ºó«½∩ÑΓ »α«ß¼«ΓαÑΓ∞ ΓѬßΓ »α«úαá¼¼, ºáúαπªÑ¡¡δσ ó
»á¼∩Γ∞ ¿ Γαáßß¿α«óáΓ∞ ¿σ ¬«ñ. Ä¡ πñ«íÑ¡ »α¿ «Γ½áñ¬Ñ ¿½¿ á¡á½¿ºÑ αѺ¿ñÑ¡Γ¡δσ
»α«úαá¼¼ (¡á»α¿¼Ñα, ñ½∩ á¡á½¿ºá αѺ¿ñÑ¡Γ¡δσ ó¿απß«ó).
éδí«α πτáßΓ¬á »á¼∩Γ¿ ñ½∩ ñ¿ºáßßÑ¼í½¿α«óá¡¿∩ »α«¿ºó«ñ¿Γß∩ ½¿í« ¬½áó¿ΦἿ UP,
DOWN, PGUP, PGDN ó »αÑñѽáσ ßÑú¼Ñ¡Γá, ½¿í« π¬áºá¡¿Ñ¼ áñαÑßá πτáßΓ¬á »α¿
»«¼«Θ¿ HEX ¬½áó¿Φ, ½¿í« »α¿ »«¼«Θ¿ «¬¡á GoTo. ä«ßΓπ»¡δ Γá¬ªÑ ¡Ñ¬«Γ«αδÑ
ñαπú¿Ñ Σπ¡¬µ¿¿.
5.1.2. ÉÑñá¬Γ«α äá¼»á
───────────────────────────────────────────────────────────────
ÉÑñá¬Γ«α ñá¼»á óδó«ñ¿Γ ¡á φ¬αá¡ ¿ »«ºó«½∩ÑΓ αÑñá¬Γ¿α«óáΓ∞ ß«ñÑন¼«Ñ
óδíαá¡¡«ú« Σá⌐½á/ßÑ¬Γ«αá/»á¼∩Γ¿ ó Σ«α¼áΓáσ HEX ¿ ASCII.
éδí«α «Γ«íαáªáѼ«ú« πτáßΓ¬á »α«¿ºó«ñ¿Γß∩ ½¿í« ¬½áó¿ΦἿ UP, DOWN, PGUP,
PGDN ó »αÑñѽáσ ßÑú¼Ñ¡Γá, ½¿í« π¬áºá¡¿Ñ¼ áñαÑßá πτáßΓ¬á »α¿ »«¼«Θ¿ HEX
¬½áó¿Φ, ½¿í« »α¿ »«¼«Θ¿ «¬¡á GoTo.
髺¼«ª¡« αÑñá¬Γ¿α«óá¡¿Ñ ½εí«ú« πτáßΓ¬á RAM. ä½∩ φΓ«ú« ¡Ñ«íσ«ñ¿¼« »α¿ »«¼«Θ¿
¬½áó¿Φ¿ TAB »ÑαÑ⌐Γ¿ ó αѪ¿¼ αÑñá¬Γ¿α«óá¡¿∩ ¿ ¿ß»«½∞º«óáΓ∞ HEX/ASCII ¬½áó¿Φ¿
»α¿ ¿º¼Ñ¡Ñ¡¿¿ ß«ñÑন¼«ú« HEX/ASCII »«½Ñ⌐. Åα¿ αÑñá¬Γ¿α«óá¡¿¿ «»ÑαáΓ¿ó¡«⌐
»á¼∩Γ¿ óßÑ ¿º¼Ñ¡Ñ¡¿∩ íπñπΓ ºá¡ÑßÑ¡δ ó ¡ÑÑ ó ¼«¼Ñ¡Γ ¡áªáΓ¿∩ ¡á ¬½áó¿Φ¿.
ä«ßΓπ»¡δ Γá¬ªÑ ¡Ñ¬«Γ«αδÑ ñαπú¿Ñ Σπ¡¬µ¿¿.
5.1.3. èáαΓá »á¼∩Γ¿
───────────────────────────────────────────────────────────────
èáαΓá »á¼∩Γ¿ ß«ßΓ«¿Γ ¿º ΦÑßΓ¿ ¬«½«¡«¬, ó ¬«Γ«αδσ «Γ«íαáªÑ¡á ß½ÑñπεΘá∩
¿¡Σ«α¼áµ¿∩:
ADDRESS - ßÑú¼Ñ¡Γ¡δ⌐ áñαÑß í½«¬á αáß»αÑñѽѡ¿∩ »á¼∩Γ¿;
PSP - ßÑú¼Ñ¡Γ¡δ⌐ áñαÑß »αÑΣ¿¬ßá »α«úαá¼¼¡«ú« ßÑú¼Ñ¡Γá;
Size - αẼÑα í½«¬á ó ¬¿½«íá⌐Γáσ;
Name - ¿¼∩ ó½áñѽ∞µá í½«¬á - »α«úαá¼¼δ ¿½¿ ß¿ßΓѼ¡«⌐ «í½áßΓ¿ (Ñß½¿ ¿¼∩
¡Ñ «»αÑñѽѡ«, Γ« π¬áºδóáÑΓß∩ º¡á¬ '?');
Type - Γ¿» í½«¬á »á¼∩Γ¿ (ñαá⌐óÑα, »α«úαá¼¼á, ßαÑñá »α«úαá¼¼δ);
Hooked Vectors - ß»¿ß«¬ »ÑαÑσóáτÑ¡¡δσ í½«¬«¼ óÑ¬Γ«α«ó »αÑαδóá¡¿⌐.
╔════╤════╤═══════╤════════════╤═══════╤════════════════════════════╗
║Addr│PSP │ Size │ Owner │ Type │ Hooked vectors ║
╟────┼────┼───────┼────────────┼───────┼────────────────────────────╢
║0A1F│0A2D│ 208│COMMAND.COM │envir │ ║
║0A2D│0A2D│ 2,640│COMMAND.COM │program│23 ║
║0AD3│0A2D│ 256│COMMAND.COM │envir │ ║
║0AE4│0AF2│ 208│AVPUTIL.COM │envir │ ║
║0AF2│0AF2│ 55█▀▀▀▀▀▀▀▀▀▀▀▀▀▀█ │program│22 DF E0 E3 EE FC ║
║189C│0000│554█ Disassembler █ │ │E4 E7 F9 FD FE ║
║A000│0008│ 80█ Dump (HEX) █ │envir │41 43 46 ║
║B3B3│ - │ █ Dump (ASCII) █ │program│ ║
║ │ │ █▄▄▄▄▄▄▄▄▄▄▄▄▄▄█ │ │ ║
╚════╧════╧════════════════════╧═══════╧════════════════════════════╝
ä½∩ óδí«αá ¿ «Γ«íαáªÑ¡¿∩ í½«¬á »á¼∩Γ¿ ¡Ñ«íσ«ñ¿¼« »ÑαÑóÑßΓ¿ ¡á ¡Ñú« ¬παß«α ¿
¡áªáΓ∞ ENTER. Åα¿ φΓ«¼ íπñÑΓ óδºóá¡« ¼Ñ¡ε èáαΓδ Åá¼∩Γ¿. êß»«½∞ºπ∩ φΓ« ¼Ñ¡ε
»α«¿ßσ«ñ¿Γ óδí«α Σ«α¼áΓá «Γ«íαáªÑ¡¿∩ í½«¬á: ñ¿ºáßßѼí½Ñα, HEX ¿½¿ ASCII
ñá¼». Åα¿ »α«ß¼«ΓαÑ í½«¬á ß¼ÑΘÑ¡¿Ñ ΓѬπΘÑú« áñαÑßá πßΓá¡áó½¿óáÑΓß∩ ó 100h,
Ñß½¿ Γ¿» í½«¬á - program, ó »α«Γ¿ó¡«¼ ß½πτáÑ ß¼ÑΘÑ¡¿Ñ πßΓá¡áó½¿óáÑΓß∩ ó
¡«½∞.
5.1.4. éÑ¬Γ«αá »αÑαδóá¡¿⌐
───────────────────────────────────────────────────────────────
é φΓ« «¬¡« óδó«ñ¿Γß∩ ¿¡Σ«α¼áµ¿∩ « ß«ßΓ«∩¡¿¿ óÑ¬Γ«α«ó »αÑαδóá¡¿⌐: ¡«¼Ñα
»αÑαδóá¡¿∩, º¡áτÑ¡¿Ñ óÑ¬Γ«αá ó Σ«α¼áΓÑ "ßÑú¼Ñ¡Γ:ß¼ÑΘÑ¡¿Ñ" ¿ ¿¼∩ »α«úαá¼¼δ
¿½¿ ß¿ßΓѼ¡«⌐ «í½áßΓ¿ »á¼∩Γ¿, ¡á ¬«Γ«απε π¬áºδóáÑΓ óÑ¬Γ«α »αÑαδóá¡¿∩. ä½∩
¡á¿í«½ÑÑ τáßΓ« ¿ß»«½∞ºπѼδσ »αÑαδóá¡¿⌐ π¬áºδóáεΓß∩ ¿σ Σπ¡¬µ¿¿ (¡áº¡áτÑ¡¿Ñ).
╔═══════╤═══════════╤══════════════╤════════════════════════════════╗
║Int 04 │ 0070:06F4 │ MSDOS.SYS │ Int 4 on overflow ║
║Int 05 │ 012F:0014 │ QEMM386$ │ Print screen ║
║Int 06 │ 012F:0018 │ QEMM386$ │ 80286+ Undefined opcode ║
║Int 07 │ 01█▀▀▀▀▀▀▀▀▀▀▀▀▀▀█6$ │ 80286+ No math unit ║
║Int 08 │ 02█ Disassembler █.exe │ IRQ0 - Timer ║
║Int 09 │ F6█ Dump (HEX) █OM │ IRQ1 - Keyboard ║
║Int 0A │ B6█ Dump (ASCII) █ │ IRQ2 - EGA vertical retrace ║
║Int 0B │ B6█ Tracer █ │ IRQ3 - COM port 2 ║
║Int 0C │ EB█ Interceptor █OM │ IRQ4 - COM port 1 ║
║Int 0D │ B6█ New value █ │ IRQ5 - Fixed disk or LPT1 ║
║Int 0E │ B6█▄▄▄▄▄▄▄▄▄▄▄▄▄▄█ │ IRQ6 - Diskette ║
╚═══════╧══════════════════════════╧════════════════════════════════╝
ä½∩ óδí«αá »αÑαδóá¡¿∩ ¿ß»«½∞ºπεΓß∩ ¬½áó¿Φ¿ UP, DOWN, HOME, END, PGUP, PGDN
¿½¿ ¡Ñ»«ßαÑñßΓóÑ¡¡δ⌐ óó«ñ ¡«¼Ñαá »αÑαδóá¡¿∩ ß ¬½áó¿áΓπαδ. Åα¿ ¡áªáΓ¿¿ ¡á
ENTER óδºδóáÑΓß∩ ¼Ñ¡ε »αÑαδóá¡¿⌐, ¬«Γ«α«Ñ »«ºó«½∩ÑΓ óδíαáΓ∞ Σ«α¼áΓ
«Γ«íαáªÑ¡¿∩ πτáßΓ¬á »á¼∩Γ¿, ¡á ¬«Γ«αδ⌐ π¬áºδóáÑΓ óÑ¬Γ«α »αÑαδóá¡¿∩:
Disassembler ñ¿ºáßßѼí½Ñα »á¼∩Γ¿ ß áñαÑßá »αÑαδóá¡¿∩
Dump (HEX) HEX ñá¼» »á¼∩Γ¿ ß áñαÑßá »αÑαδóá¡¿∩
Dump (ASCII) ASCII ñá¼» »á¼∩Γ¿ ß áñαÑßá »αÑαδóá¡¿∩
Tracer Γαáßß¿α«ó¬á »αÑαδóá¡¿∩
Interceptor »ÑαÑσóáΓ »αÑαδóá¡¿∩
New value ¿º¼Ñ¡Ñ¡¿Ñ º¡áτÑ¡¿∩ óÑ¬Γ«αá »αÑαδóá¡¿∩
5.1.5. Æαáßß¿α«óΘ¿¬
───────────────────────────────────────────────────────────────
éìêîÇìêà! êß»«½∞º«óá¡¿Ñ φΓ«⌐ Σπ¡¬µ¿¿ ß ¡Ñ¬«ααÑ¬Γ¡δ¼¿ »áαá¼ÑΓαἿ ¼«ªÑΓ
»α¿óÑßΓ¿ ¬ ¡Ñ»αÑñ߬áºπѼ«¼π »«óÑñÑ¡¿ε ¬«¼»∞εΓÑαá.
Æαáßß¿α«óΘ¿¬ »α«σ«ñ¿Γ »« Γα«»¿¡¬Ñ («íαáí«Γτ¿¬π) π¬áºδóáѼ«ú« »αÑαδóá¡¿∩ ¿
óδñáÑΓ áßßѼí½Ñα¡δ⌐ ½¿ßΓ¿¡ú αѺπ½∞ΓáΓá Γαáßß¿α«ó¬¿. é ½¿ßΓ¿¡úÑ ß«ñÑαªáΓß∩
¿¼Ñ¡á »α«úαá¼¼, »ÑαÑσóáΓ¿óΦ¿σ π¬áºá¡¡«Ñ »αÑαδóá¡¿Ñ, áñαÑßá, ΦÑßΓ¡áñµáΓ¿α¿τ¡δ⌐
ñá¼» ¿ ¼¡Ñ¼«¡¿¬¿ óδ»«½¡Ñ¡¡δσ ó »α«µÑßßÑ Γαáßß¿α«ó¬¿ áßßѼí½Ñα¡δσ ¬«¼á¡ñ.
Æαáßß¿α«óΘ¿¬ »«½ÑºÑ¡ ñ½∩ «í¡áαπªÑ¡¿∩ ¡Ñ¿ºóÑßΓ¡«ú« αѺ¿ñÑ¡Γ¡«ú« ó¿απßá ¿
»«¼«ªÑΓ »α¿ Ñú« á¡á½¿ºÑ.
ìáτá½∞¡δÑ ß«ßΓ«∩¡¿∩ αÑú¿ßΓα«ó ºá»«½¡∩εΓß∩ ó ¼Ñ¡ε αÑú¿ßΓα«ó:
█▀▀▀▀▀▀▀▀▀ Trace Int 21h : ▀▀▀▀▀▀▀▀▀█
█ AX 6200 CS:IP 0000:0000 FL 7202 █
█ BX 0000 DS:SI 1CEE:0000 █
█ CX 0000 ES:DI 1CEE:0000 █
█ DX 0000 SS:SP 1CEE:FFFE BP 0000 █
█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█
¥Γ« ªÑ «¬¡« »«∩ó½∩ÑΓß∩ »«ß½Ñ ºáóÑαΦÑ¡¿∩ αáí«Γδ óδíαá¡¡«ú« »αÑαδóá¡¿∩.
5.1.6. ÅÑαÑσóáΓτ¿¬
───────────────────────────────────────────────────────────────
éìêîÇìêà! ìѬ«ααÑ¬Γ¡«Ñ ¿ß»«½∞º«óá¡¿Ñ φΓ«⌐ Σπ¡¬µ¿¿ ¼«ªÑΓ »α¿óÑßΓ¿ ¬
¡Ñ»αÑñ߬áºπѼ«¼π »«óÑñÑ¡¿ε ¬«¼»∞εΓÑαá.
ÅÑαÑσóáΓτ¿¬ óßΓαá¿óáÑΓß∩ ó µÑ»«τ¬π óδíαá¡¡«ú« »αÑαδóá¡¿∩ ¿ ß««íΘáÑΓ «
¬áªñ«¼ ó맮óÑ φΓ«ú« »αÑαδóá¡¿∩. Åα¿ φΓ«¼ ¡á φ¬αá¡ óδó«ñ¿Γß∩ «¬¡«, ó ¬«Γ«α«¼
π¬áºδóáεΓß∩ ¡«¼Ñα »ÑαÑσóáτÑ¡¡«ú« »αÑαδóá¡¿∩, ¿¼∩ í½«¬á »á¼∩Γ¿, óδºδóáεΘÑú«
»αÑαδóá¡¿Ñ, ß«ßΓ«∩¡¿∩ óßÑσ αÑú¿ßΓα«ó ¡á ¼«¼Ñ¡Γ ó맮óá »αÑαδóá¡¿∩ ¿ ßΓ᫬π,
¡á ¬«Γ«απε π¬áºδóáεΓ αÑú¿ßΓαδ, óδíαá¡¡δÑ »«½∞º«óáΓѽѼ (»α¿ »Ñαó«¼ ó맮óÑ -
DS:DX):
█▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█
█ INT 21 [AVPUTIL.COM ] █
█─────────────────────────────█
█ Dos service █
█═════════════════════════════█
█ AX 3D02 DI E88A DS 0B6D █
█ BX 033A SI 0037 ES 0B6D █
█ CX 0000 BP 0B6D █
█ DX 8F45 SP 098C SS 934E █
█─────────────────────────────█
█ Flags 0F02 CS:IP 0B6D:50A3 █
█═════════════════════════════█
█ DS:DX [C:\AVPUTIL.INI ] █
█ Back BA9876543210 [Trace ] █
█ [ OK ] [Cancel] [ Free ] █
█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█
ÅÑαÑσóáΓτ¿¬ ºá»«¼¿¡áÑΓ »«ß½Ññ¡¿Ñ 12 ó맮ó«ó »αÑαδóá¡¿⌐, í½áú«ñáα∩ τѼπ
»«½∞º«óáΓѽ∞ ¼«ªÑΓ »α«ß¼«ΓαÑΓ∞ ß«ßΓ«∩¡¿Ñ αÑú¿ßΓα«ó ó »αÑñδñπΘ¿σ ó맮óáσ,
óδí¿αá∩ "ßΓαá¡¿µπ" »ÑαÑσóáΓτ¿¬á ó »«½Ñ "Back".
Ä»µ¿¿ «º¡áτáεΓ:
OK - »α«ñ«½ª¿Γ∞ »αÑαδóá¡¿Ñ
Cancel - πßΓá¡«ó¿Γ∞ Carry flag ¿ ¡Ñ¼Ññ½Ñ¡¡« ºáóÑαΦ¿Γ∞ »αÑαδóá¡¿Ñ
Free - »αѬαáΓ¿Γ∞ »ÑαÑσóáΓ »αÑαδóá¡¿∩
Trace - á¡á½«ú¿τ¡« "OK" ß Γ«⌐ αạ¿µÑ⌐, τΓ« »α¿ óσ«ñÑ ó ¡áßΓ«∩Θ¿⌐
«íαáí«Γτ¿¬ »αÑαδóá¡¿∩ óδºδóáÑΓß∩ INT 3 (Debug Breakpoint). ä½∩
αáí«Γδ φΓ«⌐ «»µ¿¿ ¡Ñ«íσ«ñ¿¼«, τΓ«íδ ó »á¼∩Γ¿ ¡áσ«ñ¿½ß∩ «Γ½áñτ¿¬,
αÑáú¿απεΘ¿⌐ ¡á ó맮ó INT 3, ¿¡áτÑ «»µ¿∩ "Trace" íπñÑΓ »«½¡«ßΓ∞ε
á¡á½«ú¿τ¡á «»µ¿¿ "OK".
éδí«α »ÑαÑσóáΓδóáѼ«ú« »αÑαδóá¡¿∩ »α«¿ßσ«ñ¿Γ ó «¬¡Ñ "Interrupts" »πΓѼ
¡áªáΓ¿∩ ¡á ¬½áó¿Φπ Enter ¡á ¿¡ΓÑαÑßπεΘѼ »αÑαδóá¡¿¿ ¿ óδí«α«¼ ó »«∩ó¿óΦѼß∩
¼Ñ¡ε «»µ¿¿ "Interceptor". Åα¿ φΓ«¼ ß½Ñóá «Γ π¬áºá¡¡«ú« »αÑαδóá¡¿∩
»«∩ó½∩ÑΓß∩ ßΓαѽ¬á. ùΓ«íδ «ßó«í«ñ¿Γ∞ »αÑαδóá¡¿Ñ, ¡πª¡« »«óΓ«α¡« »α«¿ºóÑßΓ¿
π¬áºá¡¡δÑ ñÑ⌐ßΓó¿∩, ½¿í« óδíαáΓ∞ «»µ¿ε "Free" ó «¬¡Ñ »ÑαÑσóáΓτ¿¬á.
5.1.7. ê¡Σ«α¼áµ¿∩ « ß¿ßΓѼÑ
───────────────────────────────────────────────────────────────
é «¬¡« "ê¡Σ«α¼áµ¿∩ « ß¿ßΓѼÑ" óδó«ñ∩Γß∩ «ß¡«ó¡δÑ σáαá¬ΓÑα¿ßΓ¿¬¿ ñá¡¡«ú«
¬«¼»∞εΓÑαá, ¡á»α¿¼Ñα, Γ¿» »α«µÑßß«αá, αѪ¿¼ »α«µÑßß«αá, ¡á½¿τ¿Ñ
ß«»α«µÑßß«αá, αẼÑα «»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿ ¿ Γ.ñ.:
█▀▀▀▀▀▀▀ System info ▀▀▀▀▀▀▀█
█ Main processor: 80486 █
█ Processor mode: V86 █
█ Coprocessor: Present █
█ DOS memory: 640 K █
█ Serial ports: █
█ 03F8, 02F8 █
█ Parallel ports: █
█ 0378, 03BC, 03BC █
█ Processor ID: █
█ GenuineIntel █
█ Model: 3 Stepping: 5 █
█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█
5.1.8. 滿߫¬ Σá⌐½«ó
────────────────────────────────────────────────────────────────────
é «¬¡« "File" óδó«ñ¿Γß∩ ß»¿ß«¬ «Γ¬αδΓδσ Σá⌐½«ó ¿ ¿¡Σ«α¼áµ¿∩ « ¡¿σ: ¿¼Ñ¡á
Σá⌐½«ó, áΓα¿íπΓδ Σá⌐½«ó, óαѼ∩ ß«ºñá¡¿∩, ñ½¿¡δ ¿ Γ.ñ.
5.2. îÑ¡ε Object
────────────────────────────────────────────────────────────────────
îÑ¡ε "Object" ¿ß»«½∞ºπÑΓß∩ ñ½∩ óδí«αá «Γ«íαáªáѼ«ú«/αÑñá¬Γ¿απѼ«ú« «íΩѬΓá:
╔════════════════════╗
║ Memory ║ «»ÑαáΓ¿ó¡á∩ »á¼∩Γ∞
║ Load file Alt-L ║ Σá⌐½ ó αѪ¿¼Ñ «Γ½áñ¬¿
║ View file Alt-V ║ Σá⌐½ ó αѪ¿¼Ñ »α«ß¼«Γαá/αÑñá¬Γ¿α«óá¡¿∩
║ Log. sector Alt-G ║ ½«ú¿τÑ߬¿⌐ ßÑ¬Γ«α
║ Phys. sector Alt-P ║ Σ¿º¿τÑ߬¿⌐ ßÑ¬Γ«α
╚════════════════════╝
Åα¿ ºá»π᪥ πΓ¿½¿Γ ó αѪ¿¼Ñ TSR αáí«Γá ß Σá⌐½á¼¿ ¿ ßÑ¬Γ«αἿ ñ«»π߬áÑΓß∩
Γ«½∞¬« »α¿ ó맮óÑ Alt-Ctrl-'+'.
5.3. îÑ¡ε Block
────────────────────────────────────────────────────────────────────
îÑ¡ε "Block" ¿ß»«½∞ºπÑΓß∩ ñ½∩ αáí«Γδ ß í½«¬á¼¿ ¿ »«¿ß¬á/ºá¼Ñ¡δ ¿¡Σ«α¼áµ¿¿:
╔════════════════════╗
║ Mark F8 ║ »«¼ÑΓ¿Γ∞ ¡áτὫ/¬«¡Ñµ í½«¬á
║ Find F7 ║ ¿ß¬áΓ∞ ßΓ᫬π
║ Find next Shift-F7 ║ ¿ß¬áΓ∞ ß½ÑñπεΘÑÑ óσ«ªñÑ¡¿Ñ ßΓ᫬¿
║ Find prev. Ctrl-F7 ║ ¿ß¬áΓ∞ »αÑñδñπΘÑÑ óσ«ªñÑ¡¿Ñ ßΓ᫬¿
║ Replace Alt-F7 ║ ¿ß¬áΓ∞ ¿ ºá¼Ñ¡¿Γ∞ ßΓ᫬π
║ Fill ║ ºá»«½¡¿Γ∞ í½«¬
║ Save Alt-W ║ ß«σαá¡¿Γ∞ í½«¬ ó Σá⌐½
╚════════════════════╝
5.4. îÑ¡ε Setup
────────────────────────────────────────────────────────────────────
îÑ¡ε "Setup" ¿ß»«½∞ºπÑΓß∩ ñ½∩ óδí«αá ¡áßΓα«Ñ¬ πΓ¿½¿Γ AVPUTIL.
╔══════════════════╗
║ Stop at INT 3 ║ »ÑαÑσóáΓ¿Γ∞ »αÑαδóá¡¿Ñ «Γ½áñ¬¿ (INT 3)
║ Change segment ║ ß«σαá¡∩Γ∞/ñ«íáó½∩Γ∞ 1000h ¬ º¡áτÑ¡¿ε ßÑú¼Ñ¡Γá
║ ║ »α¿ »ÑαÑσ«ñÑ τÑαѺ úαá¡¿µπ ßÑú¼Ñ¡Γá
║ Address link ║ ¬«ααÑ¬Γ¿α«ó¬á áñαÑß«ó ó αẽ¿τ¡δσ «¬¡áσ
║ Allow graph.mode ║ αáí«Γá ó úαáΣ¿τÑ߬¿σ ó¿ñÑ«-αѪ¿¼áσ
║ Save desktop ║ ß«σαá¡¿Γ∞ πßΓá¡«ó¬¿ ó INI Σá⌐½Ñ
║ Stay TSR ║ «ßΓáΓ∞ß∩ αѺ¿ñÑ¡Γ¡« ó »á¼∩Γ¿
║ Remove TSR ║ πñ὿Γ∞ αѺ¿ñÑ¡Γ¡πε τáßΓ∞ ¿º »á¼∩Γ¿
║ Quit Alt-X ║ óδσ«ñ ó DOS
╚══════════════════╝
5.5. æ¿ßΓѼá GoTo
───────────────────────────────────────────────────────────────
Ĭ¡« GoTo ¿ß»«½∞ºπÑΓß∩ ñ½∩ íδßΓα«ú« »ÑαÑσ«ñá ¡á áñαÑßá ¿º ß»¿ß¬á GoTo »α¿
ñ¿ºáßßÑ¼í½¿α«óá¡¿¿ ¿½¿ »α«ß¼«ΓαÑ/αÑñá¬Γ¿α«óá¡¿¿ «íΩÑ¬Γ«ó. é ß»¿ß«¬ GoTo
ºá»«¼¿¡áεΓß∩ »ÑαÑσ«ñδ, ßñѽᡡδÑ αá¡ÑÑ. Ĭ¡« GoTo á¬Γ¿ó¿º¿απÑΓß∩ »« ¡áªáΓ¿ε
¬½áó¿Φ ENTER ¿½¿ Ctrl-F5.
Åα¿ óó«ñÑ áñαÑßá »ÑαÑσ«ñá ñ«»π߬áεΓß∩ HEX ß¿¼ó«½δ ¿ ¿¼Ñ¡á αÑú¿ßΓα«ó,
¡á»α¿¼Ñα:
100
0:46C
SS-1:001F+BX-DS+FL
CS:IP
5.6. â«α∩τ¿Ñ ¬½áó¿Φ¿
────────────────────────────────────────────────────────────────────
â«α∩τ¿Ñ ¬½áó¿Φ¿ ñѽ∩Γß∩ ¡á »«ñúαπ»»δ:
é맮ó TSR
Alt-'+' ¡Ñ¼Ññ½Ñ¡¡δ⌐ ó맮ó TSR
Alt-Ctrl-'+' «ª¿ñá¡¿Ñ ¼«¼Ñ¡Γá "Σπ¡¬µ¿¿ DOS - ßó«í«ñ¡δ"
¿ ó맮ó TSR
ô»αáó½Ñ¡¿Ñ ¼Ñ¡ε
Alt-U ó맮ó ¼Ñ¡ε Utilities
Alt-O ó맮ó ¼Ñ¡ε Object
Alt-B ó맮ó ¼Ñ¡ε Block
Alt-S ó맮ó ¼Ñ¡ε Setup
F9 ó맮ó »αÑñδñπΘÑú« ¼Ñ¡ε
ô»αáó½Ñ¡¿Ñ αѪ¿¼á¼¿
Alt-E, Alt-1 ñ¿ºáßßѼí½Ñα
Alt-D, Alt-2 HEX ñá¼»
Alt-M, Alt-3 ¬áαΓá »á¼∩Γ¿
Alt-I, Alt-4 ¬áαΓá óÑ¬Γ«α«ó »αÑαδóá¡¿⌐
Alt-F ß»¿ß«¬ Σá⌐½«ó
Alt-Y ¿¡Σ«α¼áµ¿∩ « ß¿ßΓѼÑ
Alt-T αѺπ½∞ΓáΓ Γαáßß¿α«ó¬¿
Alt-X, F10 ó«ºóαáΓ ó DOS ¿½¿ »αÑαóá¡¡πε »α«úαá¼¼π
ô»αáó½Ñ¡¿Ñ «íΩѬΓἿ
Alt-L ºáúαπº¿Γ∞ Σá⌐½ ñ½∩ «Γ½áñ¬¿
Alt-V ºáúαπº¿Γ∞ Σá⌐½ ñ½∩ »α«ß¼«Γαá/αÑñá¬Γ¿α«óá¡¿∩
Alt-G »α«τ¿ΓáΓ∞ ½«ú¿τÑ߬¿⌐ ßÑ¬Γ«α
Alt-P »α«τ¿ΓáΓ∞ Σ¿º¿τÑ߬¿⌐ ßÑ¬Γ«α
Éáí«Γá ß í½«¬á¼¿
F8 »«¼ÑΓ¿Γ∞ ¡áτὫ/¬«¡Ñµ í½«¬á
F7 ¿ß¬áΓ∞ ßΓ᫬π
Shift-F7 ¿ß¬áΓ∞ ß½ÑñπεΘÑÑ óσ«ªñÑ¡¿Ñ ßΓ᫬¿
Ctrl-F7 ¿ß¬áΓ∞ »αÑñδñπΘÑÑ óσ«ªñÑ¡¿Ñ ßΓ᫬¿
Alt-F7 ¿ß¬áΓ∞ ¿ ºá¼Ñ¡¿Γ∞ ßΓ᫬π
Alt-W ß«σαá¡¿Γ∞ í½«¬ ó Σá⌐½
ô»αáó½Ñ¡¿Ñ «¬¡á¼¿
F5 αáß»áσ¡πΓ∞/ºá¬αδΓ∞ «¬¡«
Alt-F5 »«¬áºáΓ∞ φ¬αá¡ »αÑαóá¡¡«⌐ »α«úαá¼¼δ
F6 »ÑαÑ⌐Γ¿ ó ß½ÑñπεΘÑÑ «¬¡«
Tab »ÑαÑ⌐Γ¿ ó ß½ÑñπεΘÑÑ »«½Ñ «¬¡á